Bug 514747 - [Interoperability][Rsa] Move Rsa migration plugin into new
git https://bugs.eclipse.org/bugs/show_bug.cgi?id=514747
- Add rsa migration into interoperability git.
Change-Id: I71dfc068b425048dd30216b3d23c0e77a1af8d91
Signed-off-by: Nicolas FAUVERGUE <nicolas.fauvergue@cea.fr>
diff --git a/common/plugins/org.eclipse.papyrus.interoperability.common/META-INF/MANIFEST.MF b/common/plugins/org.eclipse.papyrus.interoperability.common/META-INF/MANIFEST.MF
index 40c94ac..d04060e 100644
--- a/common/plugins/org.eclipse.papyrus.interoperability.common/META-INF/MANIFEST.MF
+++ b/common/plugins/org.eclipse.papyrus.interoperability.common/META-INF/MANIFEST.MF
@@ -21,7 +21,8 @@
org.eclipse.gmf.runtime.notation;bundle-version="[1.7.0,2.0.0)",
org.eclipse.m2m.qvt.oml;bundle-version="[3.7.0,4.0.0)",
org.eclipse.papyrus.uml.extensionpoints;bundle-version="[1.2.0,2.0.0)",
- org.eclipse.papyrus.uml.modelrepair;bundle-version="[2.0.0,3.0.0)"
+ org.eclipse.papyrus.uml.modelrepair;bundle-version="[2.0.0,3.0.0)",
+ com.google.guava;bundle-version="21.0.0"
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
Bundle-ActivationPolicy: lazy
Export-Package: org.eclipse.papyrus.interoperability.common,
diff --git a/common/tests/org.eclipse.papyrus.interoperability.common.tests/META-INF/MANIFEST.MF b/common/tests/org.eclipse.papyrus.interoperability.common.tests/META-INF/MANIFEST.MF
index cdc124e..5b90a2f 100644
--- a/common/tests/org.eclipse.papyrus.interoperability.common.tests/META-INF/MANIFEST.MF
+++ b/common/tests/org.eclipse.papyrus.interoperability.common.tests/META-INF/MANIFEST.MF
@@ -12,7 +12,8 @@
org.eclipse.emf.ecore;bundle-version="[2.13.0,3.0.0)",
org.eclipse.uml2.uml;bundle-version="[5.2.0,6.0.0)",
org.eclipse.papyrus.junit.utils;bundle-version="[2.0.0,3.0.0)",
- org.eclipse.emf.compare;bundle-version="[3.3.0,4.0.0)"
+ org.eclipse.emf.compare;bundle-version="[3.3.0,4.0.0)",
+ com.google.guava;bundle-version="21.0.0"
Bundle-Activator: org.eclipse.papyrus.interoperability.common.tests.Activator
Bundle-ActivationPolicy: lazy
Export-Package: org.eclipse.papyrus.interoperability.common.tests,
diff --git a/diagram-definition/releng/main/targetplatform/org.eclipse.papyrus.interoperability.dd.targetplatform.oxygen/org.eclipse.papyrus.interoperability.dd.targetplatform.oxygen.target b/diagram-definition/releng/main/targetplatform/org.eclipse.papyrus.interoperability.dd.targetplatform.oxygen/org.eclipse.papyrus.interoperability.dd.targetplatform.oxygen.target
index e71af69..a121213 100644
--- a/diagram-definition/releng/main/targetplatform/org.eclipse.papyrus.interoperability.dd.targetplatform.oxygen/org.eclipse.papyrus.interoperability.dd.targetplatform.oxygen.target
+++ b/diagram-definition/releng/main/targetplatform/org.eclipse.papyrus.interoperability.dd.targetplatform.oxygen/org.eclipse.papyrus.interoperability.dd.targetplatform.oxygen.target
@@ -36,6 +36,11 @@
<unit id="org.eclipse.gmf.runtime.notation.sdk.feature.group" version="1.10.0.201606071631"/>
<repository location="http://download.eclipse.org/modeling/gmp/gmf-notation/updates/releases"/>
</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
+</location>
<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.core.source.feature.feature.group" version="1.5.0.201703192131"/>
diff --git a/releng/Papyrus - Rsa - Main.launch b/releng/Papyrus - Rsa - Main.launch
new file mode 100644
index 0000000..429a491
--- /dev/null
+++ b/releng/Papyrus - Rsa - Main.launch
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">
+<booleanAttribute key="M2_DEBUG_OUTPUT" value="false"/>
+<stringAttribute key="M2_GOALS" value="clean install"/>
+<booleanAttribute key="M2_NON_RECURSIVE" value="false"/>
+<booleanAttribute key="M2_OFFLINE" value="false"/>
+<stringAttribute key="M2_PROFILES" value="Rsa"/>
+<listAttribute key="M2_PROPERTIES">
+<listEntry value="eclipse.p2.mirrors=false"/>
+</listAttribute>
+<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>
+<booleanAttribute key="M2_SKIP_TESTS" value="false"/>
+<intAttribute key="M2_THREADS" value="1"/>
+<booleanAttribute key="M2_UPDATE_SNAPSHOTS" value="false"/>
+<stringAttribute key="M2_USER_SETTINGS" value=""/>
+<booleanAttribute key="M2_WORKSPACE_RESOLUTION" value="false"/>
+<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${project_loc:releng}/main"/>
+</launchConfiguration>
diff --git a/releng/Papyrus - Rsa - Test.launch b/releng/Papyrus - Rsa - Test.launch
new file mode 100644
index 0000000..d1702dd
--- /dev/null
+++ b/releng/Papyrus - Rsa - Test.launch
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.m2e.Maven2LaunchConfigurationType">
+<booleanAttribute key="M2_DEBUG_OUTPUT" value="false"/>
+<stringAttribute key="M2_GOALS" value="clean verify"/>
+<booleanAttribute key="M2_NON_RECURSIVE" value="false"/>
+<booleanAttribute key="M2_OFFLINE" value="false"/>
+<stringAttribute key="M2_PROFILES" value="RsaTests"/>
+<listAttribute key="M2_PROPERTIES">
+<listEntry value="papyrus.repo.interoperability.main=file:/${project_loc:releng}/../rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/target/repository"/>
+</listAttribute>
+<stringAttribute key="M2_RUNTIME" value="EMBEDDED"/>
+<booleanAttribute key="M2_SKIP_TESTS" value="false"/>
+<intAttribute key="M2_THREADS" value="1"/>
+<booleanAttribute key="M2_UPDATE_SNAPSHOTS" value="false"/>
+<stringAttribute key="M2_USER_SETTINGS" value=""/>
+<booleanAttribute key="M2_WORKSPACE_RESOLUTION" value="false"/>
+<stringAttribute key="org.eclipse.jdt.launching.WORKING_DIRECTORY" value="${project_loc:releng}/tests"/>
+</launchConfiguration>
diff --git a/releng/main/pom.xml b/releng/main/pom.xml
index 35b84fe..d90cc91 100644
--- a/releng/main/pom.xml
+++ b/releng/main/pom.xml
@@ -247,6 +247,8 @@
<module>targetplatform</module>
<module>../../rpy/plugins</module>
<module>../../rpy/features/org.eclipse.papyrus.interoperability.rpy.feature</module>
+ <module>../../rsa/plugins</module>
+ <module>../../rsa/features/org.eclipse.papyrus.interoperability.rsa.feature</module>
<!--module>../../sysml14/plugins</module>
<module>../../sysml14/features/org.eclipse.papyrus.interoperability.sysml14.sysml.feature</module-->
<module>../../diagram-definition/plugins</module>
@@ -290,6 +292,42 @@
<module>../../rpy/features/org.eclipse.papyrus.interoperability.rpy.feature</module>
</modules>
</profile>
+
+ <profile>
+ <id>Rsa</id>
+
+ <build>
+ <plugins>
+ <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>
+
+ <properties>
+ <target.platform>org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen</target.platform>
+ <target.platform.groupid>org.eclipse.papyrus.interoperability</target.platform.groupid>
+ <target.version>1.4.0-SNAPSHOT</target.version>
+ </properties>
+
+ <modules>
+ <module>../../rsa/releng/main</module>
+ <module>../../rsa/plugins</module>
+ <module>../../rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2</module>
+ <module>../../rsa/features/org.eclipse.papyrus.interoperability.rsa.feature</module>
+ </modules>
+ </profile>
<profile>
<id>SysML14</id>
diff --git a/releng/main/targetplatform/org.eclipse.papyrus.interoperability.targetplatform.oxygen/org.eclipse.papyrus.interoperability.targetplatform.oxygen.target b/releng/main/targetplatform/org.eclipse.papyrus.interoperability.targetplatform.oxygen/org.eclipse.papyrus.interoperability.targetplatform.oxygen.target
index 48704ec..e78c7eb 100644
--- a/releng/main/targetplatform/org.eclipse.papyrus.interoperability.targetplatform.oxygen/org.eclipse.papyrus.interoperability.targetplatform.oxygen.target
+++ b/releng/main/targetplatform/org.eclipse.papyrus.interoperability.targetplatform.oxygen/org.eclipse.papyrus.interoperability.targetplatform.oxygen.target
@@ -23,6 +23,8 @@
<unit id="org.eclipse.papyrus.sysml.nattable.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.properties.feature.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.properties.feature.source.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.extra.dsml.validation.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.extra.dsml.validation.feature.source.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/extra/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
@@ -55,6 +57,11 @@
<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
+</location>
<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.core.source.feature.feature.group" version="1.5.0.201703192131"/>
diff --git a/releng/org.eclipse.papyrus.interoperability.all.p2/category.xml b/releng/org.eclipse.papyrus.interoperability.all.p2/category.xml
index 3310f4b..d2c1f8b 100644
--- a/releng/org.eclipse.papyrus.interoperability.all.p2/category.xml
+++ b/releng/org.eclipse.papyrus.interoperability.all.p2/category.xml
@@ -6,6 +6,9 @@
<feature url="features/org.eclipse.papyrus.interoperability.dd.feature_0.7.0.qualifier.jar" id="org.eclipse.papyrus.interoperability.dd.feature" version="0.7.0.qualifier">
<category name="org.eclipse.papyrus.category"/>
</feature>
+ <feature url="features/org.eclipse.papyrus.interoperability.rsa.feature_1.2.0.qualifier.jar" id="org.eclipse.papyrus.interoperability.rsa.feature" version="1.2.0.qualifier">
+ <category name="org.eclipse.papyrus.category"/>
+ </feature>
<category-def name="org.eclipse.papyrus.category" label="Papyrus Interoperability">
<description>
Papyrus Interoperability Category
diff --git a/releng/tests/pom.xml b/releng/tests/pom.xml
index 8c1b4ec..9acf891 100644
--- a/releng/tests/pom.xml
+++ b/releng/tests/pom.xml
@@ -182,6 +182,8 @@
<module>targetplatform</module>
<module>../../rpy/tests</module>
<module>../../rpy/features/org.eclipse.papyrus.interoperability.rpy.tests.feature</module>
+ <module>../../rsa/tests</module>
+ <module>../../rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature</module>
<!--module>../../sysml14/tests</module>
<module>../../sysml14/features/org.eclipse.papyrus.interoperability.sysml14.sysml.tests.feature</module-->
</modules>
@@ -219,6 +221,8 @@
<module>targetplatform</module>
<module>../../rpy/tests</module>
<module>../../rpy/features/org.eclipse.papyrus.interoperability.rpy.tests.feature</module>
+ <module>../../rsa/tests</module>
+ <module>../../rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature</module>
<!--module>../../sysml14/tests</module>
<module>../../sysml14/features/org.eclipse.papyrus.interoperability.sysml14.sysml.tests.feature</module-->
</modules>
@@ -303,6 +307,84 @@
</profile>
<profile>
+ <id>RsaTests</id>
+
+ <repositories>
+ <repository>
+ <id>papyrus-interoperability-main</id>
+ <layout>p2</layout>
+ <url>${papyrus.repo.interoperability.main}</url>
+ </repository>
+ </repositories>
+
+ <build>
+ <plugins>
+ <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>
+
+ <properties>
+ <target.platform>org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen</target.platform>
+ <target.platform.groupid>org.eclipse.papyrus.interoperability.tests</target.platform.groupid>
+ <target.version>1.4.0-SNAPSHOT</target.version>
+ </properties>
+
+ <modules>
+ <module>../../rsa/releng/tests</module>
+ <module>../../rsa/tests</module>
+ <module>../../rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature</module>
+ </modules>
+ </profile>
+
+ <profile>
+ <id>Rsa</id>
+
+ <build>
+ <plugins>
+ <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>
+
+ <properties>
+ <target.platform>org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen</target.platform>
+ <target.platform.groupid>org.eclipse.papyrus.interoperability.tests</target.platform.groupid>
+ <target.version>1.4.0-SNAPSHOT</target.version>
+ </properties>
+
+ <modules>
+ <module>../../rsa/releng/tests</module>
+ <module>../../rsa/tests</module>
+ <module>../../rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature</module>
+ </modules>
+ </profile>
+
+ <profile>
<id>SysML14Tests</id>
<repositories>
diff --git a/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.targetplatform.oxygen/org.eclipse.papyrus.interoperability.targetplatform.oxygen.target b/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.targetplatform.oxygen/org.eclipse.papyrus.interoperability.targetplatform.oxygen.target
index 59cfe92..8b430a4 100644
--- a/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.targetplatform.oxygen/org.eclipse.papyrus.interoperability.targetplatform.oxygen.target
+++ b/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.targetplatform.oxygen/org.eclipse.papyrus.interoperability.targetplatform.oxygen.target
@@ -23,6 +23,8 @@
<unit id="org.eclipse.papyrus.sysml.nattable.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.nattable.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.extra.dsml.validation.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.extra.dsml.validation.feature.source.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/extra/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
@@ -55,10 +57,15 @@
<unit id="org.eclipse.papyrus.junit.feature.source.feature.group" version="0.0.0"/>
<repository location="https://hudson.eclipse.org/papyrus/view/Oxygen%20(Master)/job/Papyrus-Master-Developer/lastSuccessfulBuild/artifact/repository/"/>
</location>
-<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
-<repository id="orbit" location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
</location>
<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
diff --git a/rpy/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen.target b/rpy/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen.target
index 04e7fd3..972bdbf 100755
--- a/rpy/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen.target
+++ b/rpy/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen.target
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317052">
+<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317053">
<locations>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.gmf.runtime.sdk.feature.group" version="1.10.0.201606071959"/>
@@ -50,18 +50,23 @@
<repository location="http://download.eclipse.org/modeling/gmp/gmf-notation/updates/releases"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
-<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
-<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
-<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
-</location>
-<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.core.source.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.source.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.feature.feature.group" version="1.1.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.source.feature.feature.group" version="1.1.0.201703192131"/>
-<repository id="nattable" location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+<repository location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
+<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
</location>
</locations>
</target>
diff --git a/rpy/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen.target b/rpy/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen.target
index 439884d..5af3605 100644
--- a/rpy/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen.target
+++ b/rpy/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rpy.targetplatform.oxygen.target
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317046">
+<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317047">
<locations>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.gmf.runtime.sdk.feature.group" version="1.10.0.201606071959"/>
@@ -45,27 +45,32 @@
<repository location="https://hudson.eclipse.org/papyrus/view/Oxygen%20(Master)/job/Papyrus-Master-Developer/lastSuccessfulBuild/artifact/repository/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.emf.compare.ide.ui.feature.group" version="0.0.0"/>
<unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
<unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
<unit id="org.eclipse.equinox.p2.discovery.feature.feature.group" version="0.0.0"/>
<unit id="org.eclipse.jdt.feature.group" version="0.0.0"/>
<unit id="org.eclipse.platform.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.emf.compare.ide.ui.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/releases/oxygen"/>
</location>
-<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
-<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
-<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
-<repository id="orbit" location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
-</location>
-<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.core.source.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.source.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.feature.feature.group" version="1.1.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.source.feature.feature.group" version="1.1.0.201703192131"/>
-<repository id="nattable" location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+<repository location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
+<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
</location>
</locations>
</target>
diff --git a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/META-INF/MANIFEST.MF b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/META-INF/MANIFEST.MF
index bc442c0..494bef9 100755
--- a/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/META-INF/MANIFEST.MF
+++ b/rpy/tests/org.eclipse.papyrus.interoperability.rpy.tests/META-INF/MANIFEST.MF
@@ -16,7 +16,8 @@
org.eclipse.papyrus.interoperability.rpy.blackboxes;bundle-version="0.7.0",
org.eclipse.papyrus.interoperability.common;bundle-version="0.7.0",
org.eclipse.papyrus.interoperability.rpy.metamodel;bundle-version="0.7.0",
- org.eclipse.papyrus.interoperability.rpy.parser.ui;bundle-version="0.7.0"
+ org.eclipse.papyrus.interoperability.rpy.parser.ui;bundle-version="0.7.0",
+ com.google.guava;bundle-version="21.0.0"
Bundle-Activator: org.eclipse.papyrus.interoperability.rpy.tests.Activator
Bundle-ActivationPolicy: lazy
Export-Package: org.eclipse.papyrus.interoperability.rpy.tests,
diff --git a/rsa/features/.gitkeep b/rsa/features/.gitkeep
deleted file mode 100755
index e69de29..0000000
--- a/rsa/features/.gitkeep
+++ /dev/null
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/.project b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/.project
new file mode 100644
index 0000000..4c61028
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rsa.feature</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/build.properties b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/build.properties
new file mode 100644
index 0000000..67be479
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/build.properties
@@ -0,0 +1,5 @@
+bin.includes = feature.xml,\
+ epl-v10.html,\
+ license.html
+src.includes = epl-v10.html,\
+ license.html
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/epl-v10.html b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/epl-v10.html
new file mode 100644
index 0000000..cb1073a
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/epl-v10.html
@@ -0,0 +1,304 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<link rel=File-List
+href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
+<title>Eclipse Public License - Version 1.0</title>
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+ {
+ panose-1:2 11 6 4 3 5 4 4 2 4;
+ mso-font-charset:0;
+ mso-font-pitch:variable;
+ mso-font-signature:553679495 -2147483648 8 0 66047 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+ {mso-style-parent:"";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ }
+p
+ {margin-right:0in;
+ mso-margin-top-alt:auto;
+ mso-margin-bottom-alt:auto;
+ margin-left:0in;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ }
+p.BalloonText, li.BalloonText, div.BalloonText
+ {mso-style-name:"Balloon Text";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:8.0pt;
+
+ }
+@page Section1
+ {size:8.5in 11.0in;
+ margin:1.0in 1.25in 1.0in 1.25in;
+ mso-header-margin:.5in;
+ mso-footer-margin:.5in;
+ mso-paper-source:0;}
+div.Section1
+ {page:Section1;}
+-->
+</style>
+</head>
+
+<body lang="EN-US" style='tab-interval:.5in'>
+
+<div class=Section1>
+
+<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
+</p>
+
+<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
+THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE,
+REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
+OF THIS AGREEMENT.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>"Contribution" means:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+in the case of the initial Contributor, the initial code and documentation
+distributed under this Agreement, and<br clear=left>
+b) in the case of each subsequent Contributor:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+changes to the Program, and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+additions to the Program;</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
+such changes and/or additions to the Program originate from and are distributed
+by that particular Contributor. A Contribution 'originates' from a Contributor
+if it was added to the Program by such Contributor itself or anyone acting on
+such Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in conjunction
+with the Program under their own license agreement, and (ii) are not derivative
+works of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>"Contributor" means any person or
+entity that distributes the Program.</span> </p>
+
+<p><span style='font-size:10.0pt'>"Licensed Patents " mean patent
+claims licensable by a Contributor which are necessarily infringed by the use
+or sale of its Contribution alone or when combined with the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>"Program" means the Contributions
+distributed in accordance with this Agreement.</span> </p>
+
+<p><span style='font-size:10.0pt'>"Recipient" means anyone who
+receives the Program under this Agreement, including all Contributors.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+Subject to the terms of this Agreement, each Contributor hereby grants Recipient
+a non-exclusive, worldwide, royalty-free copyright license to<span
+style='color:red'> </span>reproduce, prepare derivative works of, publicly
+display, publicly perform, distribute and sublicense the Contribution of such
+Contributor, if any, and such derivative works, in source code and object code
+form.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
+patent license under Licensed Patents to make, use, sell, offer to sell, import
+and otherwise transfer the Contribution of such Contributor, if any, in source
+code and object code form. This patent license shall apply to the combination
+of the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such combination
+to be covered by the Licensed Patents. The patent license shall not apply to
+any other combinations which include the Contribution. No hardware per se is
+licensed hereunder. </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
+Recipient understands that although each Contributor grants the licenses to its
+Contributions set forth herein, no assurances are provided by any Contributor
+that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient
+for claims brought by any other entity based on infringement of intellectual
+property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility
+to secure any other intellectual property rights needed, if any. For example,
+if a third party patent license is required to allow Recipient to distribute
+the Program, it is Recipient's responsibility to acquire that license before
+distributing the Program.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
+Each Contributor represents that to its knowledge it has sufficient copyright
+rights in its Contribution, if any, to grant the copyright license set forth in
+this Agreement. </span></p>
+
+<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
+Program in object code form under its own license agreement, provided that:</span>
+</p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it complies with the terms and conditions of this Agreement; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+its license agreement:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of title
+and non-infringement, and implied warranties or conditions of merchantability
+and fitness for a particular purpose; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+effectively excludes on behalf of all Contributors all liability for damages,
+including direct, indirect, special, incidental and consequential damages, such
+as lost profits; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
+states that any provisions which differ from this Agreement are offered by that
+Contributor alone and not by any other party; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
+states that source code for the Program is available from such Contributor, and
+informs licensees how to obtain it in a reasonable manner on or through a
+medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
+
+<p><span style='font-size:10.0pt'>When the Program is made available in source
+code form:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it must be made available under this Agreement; and </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
+copy of this Agreement must be included with each copy of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
+copyright notices contained within the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
+originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution. </span></p>
+
+<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
+
+<p><span style='font-size:10.0pt'>Commercial distributors of software may
+accept certain responsibilities with respect to end users, business partners
+and the like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes the
+Program in a commercial product offering, such Contributor ("Commercial
+Contributor") hereby agrees to defend and indemnify every other
+Contributor ("Indemnified Contributor") against any losses, damages and
+costs (collectively "Losses") arising from claims, lawsuits and other
+legal actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor in
+connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In order
+to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor
+to control, and cooperate with the Commercial Contributor in, the defense and
+any related settlement negotiations. The Indemnified Contributor may participate
+in any such claim at its own expense.</span> </p>
+
+<p><span style='font-size:10.0pt'>For example, a Contributor might include the
+Program in a commercial product offering, Product X. That Contributor is then a
+Commercial Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under this
+section, the Commercial Contributor would have to defend claims against the
+other Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
+WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and distributing the
+Program and assumes all risks associated with its exercise of rights under this
+Agreement , including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations. </span></p>
+
+<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
+THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
+
+<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
+or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without
+further action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.</span> </p>
+
+<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
+against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with
+other software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the date
+such litigation is filed. </span></p>
+
+<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
+shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable
+period of time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive. </span></p>
+
+<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
+copies of this Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The Agreement
+Steward reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement Steward has
+the right to modify this Agreement. The Eclipse Foundation is the initial
+Agreement Steward. The Eclipse Foundation may assign the responsibility to
+serve as the Agreement Steward to a suitable separate entity. Each new version
+of the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version of
+the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly stated
+in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether
+expressly, by implication, estoppel or otherwise. All rights in the Program not
+expressly granted under this Agreement are reserved.</span> </p>
+
+<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
+State of New York and the intellectual property laws of the United States of
+America. No party to this Agreement will bring a legal action under this
+Agreement more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.</span> </p>
+
+<p class=MsoNormal></p>
+
+</div>
+
+</body>
+
+</html>
\ No newline at end of file
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/feature.xml b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/feature.xml
new file mode 100644
index 0000000..59f841f
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/feature.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.eclipse.papyrus.interoperability.rsa.feature"
+ label="Papyrus RSA Import Feature"
+ version="1.2.0.qualifier"
+ provider-name="Eclipse Modeling Project">
+
+ <description>
+ This component allows importing UML models from RSA and RSA-RTE
+ </description>
+
+ <copyright>
+ Copyright (c) 2013 CEA LIST.
+
+ All rights reserved.
+ </copyright>
+
+ <plugin
+ id="org.eclipse.papyrus.interoperability.common"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.interoperability.common.blackboxes"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+ <plugin
+ id="org.eclipse.papyrus.interoperability.rsa"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/license.html b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/license.html
new file mode 100644
index 0000000..c3d34c3
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/license.html
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>April 9, 2014</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY "CONTENT"). 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.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>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 1.0
+ ("EPL"). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+ repository ("Repository") in software modules ("Modules") and made available as downloadable archives ("Downloads").</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and features ("Features").</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java™ ARchive) in a directory named "plugins".</li>
+ <li>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 "features". Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features ("Included Features"). Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named "about.html" ("Abouts"). The terms and conditions governing Features and
+Included Features should be contained in files named "license.html" ("Feature Licenses"). Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named "src" of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>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 ("Feature Update License") 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 "license" property of files named "feature.properties" 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.</p>
+
+<p>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):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>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.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager ("Provisioning Technology") for the purpose of allowing users to install software, documentation, information and/or
+ other materials (collectively "Installable Software"). 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 <a
+ href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ ("Specification").</p>
+
+<p>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:</p>
+
+<ol>
+ <li>A series of actions may occur ("Provisioning Process") in which a user may execute the Provisioning Technology
+ on a machine ("Target Machine") with the intent of installing, extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>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.</li>
+ <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+ Software ("Installable Software Agreement") 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.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>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's laws, regulations and policies concerning the import,
+ possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/pom.xml b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/pom.xml
new file mode 100644
index 0000000..dad7a63
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.feature/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.papyrus.interoperability.releng</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability</groupId>
+ <relativePath>../../../releng/main/pom.xml</relativePath>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.feature</artifactId>
+ <groupId>org.eclipse.papyrus</groupId>
+ <version>1.2.0-SNAPSHOT</version>
+ <packaging>eclipse-feature</packaging>
+</project>
\ No newline at end of file
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.featire/.project b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.featire/.project
new file mode 100644
index 0000000..df8cb6c
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.featire/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rsa.tests.feature</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/.project b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/.project
new file mode 100644
index 0000000..df8cb6c
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rsa.tests.feature</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.pde.FeatureBuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.pde.FeatureNature</nature>
+ </natures>
+</projectDescription>
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/build.properties b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/build.properties
new file mode 100644
index 0000000..67be479
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/build.properties
@@ -0,0 +1,5 @@
+bin.includes = feature.xml,\
+ epl-v10.html,\
+ license.html
+src.includes = epl-v10.html,\
+ license.html
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/epl-v10.html b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/epl-v10.html
new file mode 100644
index 0000000..cb1073a
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/epl-v10.html
@@ -0,0 +1,304 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN">
+<html xmlns:o="urn:schemas-microsoft-com:office:office"
+xmlns:w="urn:schemas-microsoft-com:office:word"
+xmlns="http://www.w3.org/TR/REC-html40">
+
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<link rel=File-List
+href="./Eclipse%20EPL%202003_11_10%20Final_files/filelist.xml">
+<title>Eclipse Public License - Version 1.0</title>
+<style>
+<!--
+ /* Font Definitions */
+@font-face
+ {
+ panose-1:2 11 6 4 3 5 4 4 2 4;
+ mso-font-charset:0;
+ mso-font-pitch:variable;
+ mso-font-signature:553679495 -2147483648 8 0 66047 0;}
+ /* Style Definitions */
+p.MsoNormal, li.MsoNormal, div.MsoNormal
+ {mso-style-parent:"";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ }
+p
+ {margin-right:0in;
+ mso-margin-top-alt:auto;
+ mso-margin-bottom-alt:auto;
+ margin-left:0in;
+ mso-pagination:widow-orphan;
+ font-size:12.0pt;
+ }
+p.BalloonText, li.BalloonText, div.BalloonText
+ {mso-style-name:"Balloon Text";
+ margin:0in;
+ margin-bottom:.0001pt;
+ mso-pagination:widow-orphan;
+ font-size:8.0pt;
+
+ }
+@page Section1
+ {size:8.5in 11.0in;
+ margin:1.0in 1.25in 1.0in 1.25in;
+ mso-header-margin:.5in;
+ mso-footer-margin:.5in;
+ mso-paper-source:0;}
+div.Section1
+ {page:Section1;}
+-->
+</style>
+</head>
+
+<body lang="EN-US" style='tab-interval:.5in'>
+
+<div class=Section1>
+
+<p align=center style='text-align:center'><b>Eclipse Public License - v 1.0</b>
+</p>
+
+<p><span style='font-size:10.0pt'>THE ACCOMPANYING PROGRAM IS PROVIDED UNDER
+THE TERMS OF THIS ECLIPSE PUBLIC LICENSE ("AGREEMENT"). ANY USE,
+REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE
+OF THIS AGREEMENT.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>1. DEFINITIONS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>"Contribution" means:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+in the case of the initial Contributor, the initial code and documentation
+distributed under this Agreement, and<br clear=left>
+b) in the case of each subsequent Contributor:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+changes to the Program, and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+additions to the Program;</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>where
+such changes and/or additions to the Program originate from and are distributed
+by that particular Contributor. A Contribution 'originates' from a Contributor
+if it was added to the Program by such Contributor itself or anyone acting on
+such Contributor's behalf. Contributions do not include additions to the
+Program which: (i) are separate modules of software distributed in conjunction
+with the Program under their own license agreement, and (ii) are not derivative
+works of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>"Contributor" means any person or
+entity that distributes the Program.</span> </p>
+
+<p><span style='font-size:10.0pt'>"Licensed Patents " mean patent
+claims licensable by a Contributor which are necessarily infringed by the use
+or sale of its Contribution alone or when combined with the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>"Program" means the Contributions
+distributed in accordance with this Agreement.</span> </p>
+
+<p><span style='font-size:10.0pt'>"Recipient" means anyone who
+receives the Program under this Agreement, including all Contributors.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>2. GRANT OF RIGHTS</span></b> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+Subject to the terms of this Agreement, each Contributor hereby grants Recipient
+a non-exclusive, worldwide, royalty-free copyright license to<span
+style='color:red'> </span>reproduce, prepare derivative works of, publicly
+display, publicly perform, distribute and sublicense the Contribution of such
+Contributor, if any, and such derivative works, in source code and object code
+form.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+Subject to the terms of this Agreement, each Contributor hereby grants
+Recipient a non-exclusive, worldwide,<span style='color:green'> </span>royalty-free
+patent license under Licensed Patents to make, use, sell, offer to sell, import
+and otherwise transfer the Contribution of such Contributor, if any, in source
+code and object code form. This patent license shall apply to the combination
+of the Contribution and the Program if, at the time the Contribution is added
+by the Contributor, such addition of the Contribution causes such combination
+to be covered by the Licensed Patents. The patent license shall not apply to
+any other combinations which include the Contribution. No hardware per se is
+licensed hereunder. </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>c)
+Recipient understands that although each Contributor grants the licenses to its
+Contributions set forth herein, no assurances are provided by any Contributor
+that the Program does not infringe the patent or other intellectual property
+rights of any other entity. Each Contributor disclaims any liability to Recipient
+for claims brought by any other entity based on infringement of intellectual
+property rights or otherwise. As a condition to exercising the rights and
+licenses granted hereunder, each Recipient hereby assumes sole responsibility
+to secure any other intellectual property rights needed, if any. For example,
+if a third party patent license is required to allow Recipient to distribute
+the Program, it is Recipient's responsibility to acquire that license before
+distributing the Program.</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>d)
+Each Contributor represents that to its knowledge it has sufficient copyright
+rights in its Contribution, if any, to grant the copyright license set forth in
+this Agreement. </span></p>
+
+<p><b><span style='font-size:10.0pt'>3. REQUIREMENTS</span></b> </p>
+
+<p><span style='font-size:10.0pt'>A Contributor may choose to distribute the
+Program in object code form under its own license agreement, provided that:</span>
+</p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it complies with the terms and conditions of this Agreement; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b)
+its license agreement:</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>i)
+effectively disclaims on behalf of all Contributors all warranties and
+conditions, express and implied, including warranties or conditions of title
+and non-infringement, and implied warranties or conditions of merchantability
+and fitness for a particular purpose; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>ii)
+effectively excludes on behalf of all Contributors all liability for damages,
+including direct, indirect, special, incidental and consequential damages, such
+as lost profits; </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iii)
+states that any provisions which differ from this Agreement are offered by that
+Contributor alone and not by any other party; and</span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>iv)
+states that source code for the Program is available from such Contributor, and
+informs licensees how to obtain it in a reasonable manner on or through a
+medium customarily used for software exchange.<span style='color:blue'> </span></span></p>
+
+<p><span style='font-size:10.0pt'>When the Program is made available in source
+code form:</span> </p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>a)
+it must be made available under this Agreement; and </span></p>
+
+<p class=MsoNormal style='margin-left:.5in'><span style='font-size:10.0pt'>b) a
+copy of this Agreement must be included with each copy of the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Contributors may not remove or alter any
+copyright notices contained within the Program. </span></p>
+
+<p><span style='font-size:10.0pt'>Each Contributor must identify itself as the
+originator of its Contribution, if any, in a manner that reasonably allows
+subsequent Recipients to identify the originator of the Contribution. </span></p>
+
+<p><b><span style='font-size:10.0pt'>4. COMMERCIAL DISTRIBUTION</span></b> </p>
+
+<p><span style='font-size:10.0pt'>Commercial distributors of software may
+accept certain responsibilities with respect to end users, business partners
+and the like. While this license is intended to facilitate the commercial use
+of the Program, the Contributor who includes the Program in a commercial
+product offering should do so in a manner which does not create potential
+liability for other Contributors. Therefore, if a Contributor includes the
+Program in a commercial product offering, such Contributor ("Commercial
+Contributor") hereby agrees to defend and indemnify every other
+Contributor ("Indemnified Contributor") against any losses, damages and
+costs (collectively "Losses") arising from claims, lawsuits and other
+legal actions brought by a third party against the Indemnified Contributor to
+the extent caused by the acts or omissions of such Commercial Contributor in
+connection with its distribution of the Program in a commercial product
+offering. The obligations in this section do not apply to any claims or Losses
+relating to any actual or alleged intellectual property infringement. In order
+to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
+Contributor in writing of such claim, and b) allow the Commercial Contributor
+to control, and cooperate with the Commercial Contributor in, the defense and
+any related settlement negotiations. The Indemnified Contributor may participate
+in any such claim at its own expense.</span> </p>
+
+<p><span style='font-size:10.0pt'>For example, a Contributor might include the
+Program in a commercial product offering, Product X. That Contributor is then a
+Commercial Contributor. If that Commercial Contributor then makes performance
+claims, or offers warranties related to Product X, those performance claims and
+warranties are such Commercial Contributor's responsibility alone. Under this
+section, the Commercial Contributor would have to defend claims against the
+other Contributors related to those performance claims and warranties, and if a
+court requires any other Contributor to pay any damages as a result, the
+Commercial Contributor must pay those damages.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>5. NO WARRANTY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT
+WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING,
+WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT,
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely
+responsible for determining the appropriateness of using and distributing the
+Program and assumes all risks associated with its exercise of rights under this
+Agreement , including but not limited to the risks and costs of program errors,
+compliance with applicable laws, damage to or loss of data, programs or
+equipment, and unavailability or interruption of operations. </span></p>
+
+<p><b><span style='font-size:10.0pt'>6. DISCLAIMER OF LIABILITY</span></b> </p>
+
+<p><span style='font-size:10.0pt'>EXCEPT AS EXPRESSLY SET FORTH IN THIS
+AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY
+OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF
+THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF
+THE POSSIBILITY OF SUCH DAMAGES.</span> </p>
+
+<p><b><span style='font-size:10.0pt'>7. GENERAL</span></b> </p>
+
+<p><span style='font-size:10.0pt'>If any provision of this Agreement is invalid
+or unenforceable under applicable law, it shall not affect the validity or
+enforceability of the remainder of the terms of this Agreement, and without
+further action by the parties hereto, such provision shall be reformed to the
+minimum extent necessary to make such provision valid and enforceable.</span> </p>
+
+<p><span style='font-size:10.0pt'>If Recipient institutes patent litigation
+against any entity (including a cross-claim or counterclaim in a lawsuit)
+alleging that the Program itself (excluding combinations of the Program with
+other software or hardware) infringes such Recipient's patent(s), then such
+Recipient's rights granted under Section 2(b) shall terminate as of the date
+such litigation is filed. </span></p>
+
+<p><span style='font-size:10.0pt'>All Recipient's rights under this Agreement
+shall terminate if it fails to comply with any of the material terms or
+conditions of this Agreement and does not cure such failure in a reasonable
+period of time after becoming aware of such noncompliance. If all Recipient's
+rights under this Agreement terminate, Recipient agrees to cease use and
+distribution of the Program as soon as reasonably practicable. However,
+Recipient's obligations under this Agreement and any licenses granted by
+Recipient relating to the Program shall continue and survive. </span></p>
+
+<p><span style='font-size:10.0pt'>Everyone is permitted to copy and distribute
+copies of this Agreement, but in order to avoid inconsistency the Agreement is
+copyrighted and may only be modified in the following manner. The Agreement
+Steward reserves the right to publish new versions (including revisions) of
+this Agreement from time to time. No one other than the Agreement Steward has
+the right to modify this Agreement. The Eclipse Foundation is the initial
+Agreement Steward. The Eclipse Foundation may assign the responsibility to
+serve as the Agreement Steward to a suitable separate entity. Each new version
+of the Agreement will be given a distinguishing version number. The Program
+(including Contributions) may always be distributed subject to the version of
+the Agreement under which it was received. In addition, after a new version of
+the Agreement is published, Contributor may elect to distribute the Program
+(including its Contributions) under the new version. Except as expressly stated
+in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to
+the intellectual property of any Contributor under this Agreement, whether
+expressly, by implication, estoppel or otherwise. All rights in the Program not
+expressly granted under this Agreement are reserved.</span> </p>
+
+<p><span style='font-size:10.0pt'>This Agreement is governed by the laws of the
+State of New York and the intellectual property laws of the United States of
+America. No party to this Agreement will bring a legal action under this
+Agreement more than one year after the cause of action arose. Each party waives
+its rights to a jury trial in any resulting litigation.</span> </p>
+
+<p class=MsoNormal></p>
+
+</div>
+
+</body>
+
+</html>
\ No newline at end of file
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/feature.properties b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/feature.properties
new file mode 100644
index 0000000..49d0eb1
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/feature.properties
@@ -0,0 +1,138 @@
+# NLS_MESSAGEFORMAT_VAR
+
+# "featureName" property - name of the feature
+featureName=Papyrus RSA migration Tests (Incubation)
+
+# "providerName" property - name of the company that provides the feature
+providerName=Eclipse Modeling Project
+
+# "licenseURL" property - URL of the "Feature License"
+# do not translate value - just change to point to a locale-specific HTML page
+licenseURL=license.html
+
+# "license" property - text of the "Feature Update License"
+# should be plain text version of license agreement pointed to be "licenseURL"
+license=\
+Eclipse Foundation Software User Agreement\n\
+April 9, 2014\n\
+\n\
+Usage Of Content\n\
+\n\
+THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR\n\
+OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY "CONTENT").\n\
+USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS\n\
+AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR\n\
+NOTICES INDICATED OR REFERENCED BELOW. BY USING THE CONTENT, YOU\n\
+AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT\n\
+AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS\n\
+OR NOTICES INDICATED OR REFERENCED BELOW. IF YOU DO NOT AGREE TO THE\n\
+TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS\n\
+OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED\n\
+BELOW, THEN YOU MAY NOT USE THE CONTENT.\n\
+\n\
+Applicable Licenses\n\
+\n\
+Unless otherwise indicated, all Content made available by the\n\
+Eclipse Foundation is provided to you under the terms and conditions of\n\
+the Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is\n\
+provided with this Content and is also available at http://www.eclipse.org/legal/epl-v10.html.\n\
+For purposes of the EPL, "Program" will mean the Content.\n\
+\n\
+Content includes, but is not limited to, source code, object code,\n\
+documentation and other files maintained in the Eclipse Foundation source code\n\
+repository ("Repository") in software modules ("Modules") and made available\n\
+as downloadable archives ("Downloads").\n\
+\n\
+\t- Content may be structured and packaged into modules to facilitate delivering,\n\
+\t extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"),\n\
+\t plug-in fragments ("Fragments"), and features ("Features").\n\
+\t- Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)\n\
+\t in a directory named "plugins".\n\
+\t- A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.\n\
+\t Each Feature may be packaged as a sub-directory in a directory named "features".\n\
+\t Within a Feature, files named "feature.xml" may contain a list of the names and version\n\
+\t numbers of the Plug-ins and/or Fragments associated with that Feature.\n\
+\t- Features may also include other Features ("Included Features"). Within a Feature, files\n\
+\t named "feature.xml" may contain a list of the names and version numbers of Included Features.\n\
+\n\
+The terms and conditions governing Plug-ins and Fragments should be\n\
+contained in files named "about.html" ("Abouts"). The terms and\n\
+conditions governing Features and Included Features should be contained\n\
+in files named "license.html" ("Feature Licenses"). Abouts and Feature\n\
+Licenses may be located in any directory of a Download or Module\n\
+including, but not limited to the following locations:\n\
+\n\
+\t- The top-level (root) directory\n\
+\t- Plug-in and Fragment directories\n\
+\t- Inside Plug-ins and Fragments packaged as JARs\n\
+\t- Sub-directories of the directory named "src" of certain Plug-ins\n\
+\t- Feature directories\n\
+\n\
+Note: if a Feature made available by the Eclipse Foundation is installed using the\n\
+Provisioning Technology (as defined below), you must agree to a license ("Feature \n\
+Update License") during the installation process. If the Feature contains\n\
+Included Features, the Feature Update License should either provide you\n\
+with the terms and conditions governing the Included Features or inform\n\
+you where you can locate them. Feature Update Licenses may be found in\n\
+the "license" property of files named "feature.properties" found within a Feature.\n\
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the\n\
+terms and conditions (or references to such terms and conditions) that\n\
+govern your use of the associated Content in that directory.\n\
+\n\
+THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER\n\
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.\n\
+SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):\n\
+\n\
+\t- Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)\n\
+\t- Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)\n\
+\t- Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)\n\
+\t- Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)\n\
+\t- Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)\n\
+\n\
+IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR\n\
+TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License\n\
+is provided, please contact the Eclipse Foundation to determine what terms and conditions\n\
+govern that particular Content.\n\
+\n\
+\n\Use of Provisioning Technology\n\
+\n\
+The Eclipse Foundation makes available provisioning software, examples of which include,\n\
+but are not limited to, p2 and the Eclipse Update Manager ("Provisioning Technology") for\n\
+the purpose of allowing users to install software, documentation, information and/or\n\
+other materials (collectively "Installable Software"). This capability is provided with\n\
+the intent of allowing such users to install, extend and update Eclipse-based products.\n\
+Information about packaging Installable Software is available at\n\
+http://eclipse.org/equinox/p2/repository_packaging.html ("Specification").\n\
+\n\
+You may use Provisioning Technology to allow other parties to install Installable Software.\n\
+You shall be responsible for enabling the applicable license agreements relating to the\n\
+Installable Software to be presented to, and accepted by, the users of the Provisioning Technology\n\
+in accordance with the Specification. By using Provisioning Technology in such a manner and\n\
+making it available in accordance with the Specification, you further acknowledge your\n\
+agreement to, and the acquisition of all necessary rights to permit the following:\n\
+\n\
+\t1. A series of actions may occur ("Provisioning Process") in which a user may execute\n\
+\t the Provisioning Technology on a machine ("Target Machine") with the intent of installing,\n\
+\t extending or updating the functionality of an Eclipse-based product.\n\
+\t2. During the Provisioning Process, the Provisioning Technology may cause third party\n\
+\t Installable Software or a portion thereof to be accessed and copied to the Target Machine.\n\
+\t3. Pursuant to the Specification, you will provide to the user the terms and conditions that\n\
+\t govern the use of the Installable Software ("Installable Software Agreement") and such\n\
+\t Installable Software Agreement shall be accessed from the Target Machine in accordance\n\
+\t with the Specification. Such Installable Software Agreement must inform the user of the\n\
+\t terms and conditions that govern the Installable Software and must solicit acceptance by\n\
+\t the end user in the manner prescribed in such Installable Software Agreement. Upon such\n\
+\t indication of agreement by the user, the provisioning Technology will complete installation\n\
+\t of the Installable Software.\n\
+\n\
+Cryptography\n\
+\n\
+Content may contain encryption software. The country in which you are\n\
+currently may have restrictions on the import, possession, and use,\n\
+and/or re-export to another country, of encryption software. BEFORE\n\
+using any encryption software, please check the country's laws,\n\
+regulations and policies concerning the import, possession, or use, and\n\
+re-export of encryption software, to see if this is permitted.\n\
+\n\
+Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.\n
+########### end of license property ##########################################
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/feature.xml b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/feature.xml
new file mode 100644
index 0000000..6d78a72
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/feature.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+ id="org.eclipse.papyrus.interoperability.rsa.tests.feature"
+ label="Papyrus RSA Import Test Feature"
+ version="1.2.0.qualifier">
+
+ <copyright url="http://www.eclipse.org/legal/epl-v10.html">
+ Copyright (c) 2011 CEA LIST
+All rights reserved. This program and the accompanying materials
+are made available under the terms of the Eclipse Public License
+v1.0
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/epl-v10.html
+ </copyright>
+
+ <license url="%licenseURL">
+ %license
+ </license>
+
+ <description url="https://eclipse.org/papyrus/">
+ This features regroups the tests on the rsa migration tool
+ </description>
+
+ <plugin
+ id="org.eclipse.papyrus.interoperability.rsa.tests"
+ download-size="0"
+ install-size="0"
+ version="0.0.0"
+ unpack="false"/>
+
+</feature>
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/license.html b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/license.html
new file mode 100644
index 0000000..c3d34c3
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/license.html
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="ISO-8859-1" ?>
+<!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>Eclipse Foundation Software User Agreement</title>
+</head>
+
+<body lang="EN-US">
+<h2>Eclipse Foundation Software User Agreement</h2>
+<p>April 9, 2014</p>
+
+<h3>Usage Of Content</h3>
+
+<p>THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR OTHER MATERIALS FOR OPEN SOURCE PROJECTS
+ (COLLECTIVELY "CONTENT"). 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.</p>
+
+<h3>Applicable Licenses</h3>
+
+<p>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 1.0
+ ("EPL"). A copy of the EPL is provided with this Content and is also available at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+ For purposes of the EPL, "Program" will mean the Content.</p>
+
+<p>Content includes, but is not limited to, source code, object code, documentation and other files maintained in the Eclipse Foundation source code
+ repository ("Repository") in software modules ("Modules") and made available as downloadable archives ("Downloads").</p>
+
+<ul>
+ <li>Content may be structured and packaged into modules to facilitate delivering, extending, and upgrading the Content. Typical modules may include plug-ins ("Plug-ins"), plug-in fragments ("Fragments"), and features ("Features").</li>
+ <li>Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java™ ARchive) in a directory named "plugins".</li>
+ <li>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 "features". Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of the Plug-ins
+ and/or Fragments associated with that Feature.</li>
+ <li>Features may also include other Features ("Included Features"). Within a Feature, files named "feature.xml" may contain a list of the names and version numbers of Included Features.</li>
+</ul>
+
+<p>The terms and conditions governing Plug-ins and Fragments should be contained in files named "about.html" ("Abouts"). The terms and conditions governing Features and
+Included Features should be contained in files named "license.html" ("Feature Licenses"). Abouts and Feature Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:</p>
+
+<ul>
+ <li>The top-level (root) directory</li>
+ <li>Plug-in and Fragment directories</li>
+ <li>Inside Plug-ins and Fragments packaged as JARs</li>
+ <li>Sub-directories of the directory named "src" of certain Plug-ins</li>
+ <li>Feature directories</li>
+</ul>
+
+<p>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 ("Feature Update License") 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 "license" property of files named "feature.properties" 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.</p>
+
+<p>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):</p>
+
+<ul>
+ <li>Eclipse Distribution License Version 1.0 (available at <a href="http://www.eclipse.org/licenses/edl-v10.html">http://www.eclipse.org/licenses/edl-v1.0.html</a>)</li>
+ <li>Common Public License Version 1.0 (available at <a href="http://www.eclipse.org/legal/cpl-v10.html">http://www.eclipse.org/legal/cpl-v10.html</a>)</li>
+ <li>Apache Software License 1.1 (available at <a href="http://www.apache.org/licenses/LICENSE">http://www.apache.org/licenses/LICENSE</a>)</li>
+ <li>Apache Software License 2.0 (available at <a href="http://www.apache.org/licenses/LICENSE-2.0">http://www.apache.org/licenses/LICENSE-2.0</a>)</li>
+ <li>Mozilla Public License Version 1.1 (available at <a href="http://www.mozilla.org/MPL/MPL-1.1.html">http://www.mozilla.org/MPL/MPL-1.1.html</a>)</li>
+</ul>
+
+<p>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.</p>
+
+
+<h3>Use of Provisioning Technology</h3>
+
+<p>The Eclipse Foundation makes available provisioning software, examples of which include, but are not limited to, p2 and the Eclipse
+ Update Manager ("Provisioning Technology") for the purpose of allowing users to install software, documentation, information and/or
+ other materials (collectively "Installable Software"). 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 <a
+ href="http://eclipse.org/equinox/p2/repository_packaging.html">http://eclipse.org/equinox/p2/repository_packaging.html</a>
+ ("Specification").</p>
+
+<p>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:</p>
+
+<ol>
+ <li>A series of actions may occur ("Provisioning Process") in which a user may execute the Provisioning Technology
+ on a machine ("Target Machine") with the intent of installing, extending or updating the functionality of an Eclipse-based
+ product.</li>
+ <li>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.</li>
+ <li>Pursuant to the Specification, you will provide to the user the terms and conditions that govern the use of the Installable
+ Software ("Installable Software Agreement") 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.</li>
+</ol>
+
+<h3>Cryptography</h3>
+
+<p>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's laws, regulations and policies concerning the import,
+ possession, or use, and re-export of encryption software, to see if this is permitted.</p>
+
+<p><small>Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.</small></p>
+</body>
+</html>
diff --git a/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/pom.xml b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/pom.xml
new file mode 100644
index 0000000..456b07d
--- /dev/null
+++ b/rsa/features/org.eclipse.papyrus.interoperability.rsa.tests.feature/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <artifactId>org.eclipse.papyrus.interoperability.tests.releng</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <relativePath>../../../releng/tests/pom.xml</relativePath>
+ <version>1.0.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.tests.feature</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <version>1.2.0-SNAPSHOT</version>
+ <packaging>eclipse-feature</packaging>
+</project>
\ No newline at end of file
diff --git a/rsa/plugins/.gitkeep b/rsa/plugins/.gitkeep
deleted file mode 100755
index e69de29..0000000
--- a/rsa/plugins/.gitkeep
+++ /dev/null
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.classpath b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.classpath
new file mode 100644
index 0000000..50aae14
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.classpath
@@ -0,0 +1,8 @@
+<?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-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src-gen"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.project b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.project
new file mode 100644
index 0000000..5243ffc
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.project
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rsa</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.m2m.qvt.oml.project.QVTONature</nature>
+ <nature>org.eclipse.pde.PluginNature</nature>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ </natures>
+</projectDescription>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.jdt.core.prefs b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..b3aa6d6
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,291 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+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/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.jdt.ui.prefs b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..954281d
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+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
+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 v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\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>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.m2m.qvt.oml.mmodel.urimap b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.m2m.qvt.oml.mmodel.urimap
new file mode 100644
index 0000000..a77e785
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/.settings/org.eclipse.m2m.qvt.oml.mmodel.urimap
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="ASCII"?>
+<uriMap:MappingContainer xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:uriMap="http:///www.eclipse.org/m2m/qvt/oml/MModelUriMap/1.0.0">
+ <mapping sourceURI="http://www.eclipse.org/papyrus/umlnotation" targetURI="platform:/resource/org.eclipse.papyrus.migration.rsa/model/PapyrusUMLNotation.ecore"/>
+ <mapping sourceURI="http://www.eclipse.org/papyrus/0.7.0/sashdi" targetURI="platform:/resource/org.eclipse.papyrus.infra.core.sasheditor.di/model/di.ecore"/>
+ <mapping sourceURI="http:///RSAToPapyrusParameters.ecore" targetURI="platform:/resource/org.eclipse.papyrus.migration.rsa/model/ui/RSAToPapyrusParameters.ecore"/>
+ <mapping sourceURI="http://www.eclipse.org/papyrus/profile/umlrt" targetURI="platform:/resource/org.eclipse.papyrus.migration.rsa/model/PapyrusRT.ecore"/>
+ <mapping sourceURI="http://www.eclipse.org/papyrus/profile/default" targetURI="platform:/resource/org.eclipse.papyrus.migration.rsa/model/PapyrusDefault.ecore"/>
+ <mapping sourceURI="http://www.eclipse.org/papyrus/profile/profilebase" targetURI="platform:/resource/org.eclipse.papyrus.migration.rsa/model/PapyrusProfileBase.ecore"/>
+ <mapping sourceURI="http://www.eclipse.org/papyrus/umlrt" targetURI="platform:/resource/org.eclipse.papyrus.umlrt/umlProfile/UMLRealTime.ecore"/>
+ <mapping sourceURI="http://www.eclipse.org/papyrus/umlrt/statemachine" targetURI="platform:/resource/org.eclipse.papyrus.umlrt/umlProfile/UMLRealTimeStateMach.ecore"/>
+ <mapping sourceURI="http://www.eclipse.org/papyrus/migration/diagramholder" targetURI="platform:/resource/org.eclipse.papyrus.migration.rsa/model/DiagramHolder.ecore"/>
+</uriMap:MappingContainer>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/META-INF/MANIFEST.MF b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..c683cd4
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/META-INF/MANIFEST.MF
@@ -0,0 +1,70 @@
+Manifest-Version: 1.0
+Require-Bundle: org.eclipse.ui,
+ org.eclipse.core.resources;bundle-version="3.9.0",
+ org.eclipse.papyrus.infra.core.log;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.m2m.qvt.oml;bundle-version="3.5.0",
+ org.eclipse.m2m.qvt.oml.common;bundle-version="3.5.0",
+ org.eclipse.m2m.qvt.oml.project;bundle-version="3.3.0",
+ org.eclipse.uml2.uml;bundle-version="5.1.0";visibility:=reexport,
+ org.eclipse.uml2.uml.edit;bundle-version="5.0.0",
+ org.eclipse.gmf.runtime.emf.core;bundle-version="1.7.0",
+ org.eclipse.core.runtime,
+ org.eclipse.emf.ecore;bundle-version="2.10.1";visibility:=reexport,
+ org.eclipse.papyrus.interoperability.rsa;visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;bundle-version="2.10.1";visibility:=reexport,
+ org.eclipse.uml2.types;visibility:=reexport,
+ org.eclipse.uml2.uml.resources;bundle-version="5.0.0",
+ org.eclipse.gmf.runtime.notation;bundle-version="1.7.0",
+ org.eclipse.papyrus.interoperability.common;bundle-version="[0.7.0,1.0.0)",
+ org.eclipse.papyrus.interoperability.common.blackboxes;bundle-version="[0.7.0,1.0.0)",
+ org.eclipse.papyrus.uml.extensionpoints;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.papyrus.dsml.validation;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.papyrus.uml.documentation.profile;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.team.core,
+ org.eclipse.papyrus.infra.tools;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.core;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.properties.ui;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.infra.widgets;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.constraints;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.services.labelprovider;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.swt,
+ org.eclipse.ui.workbench,
+ org.eclipse.ui.navigator;bundle-version="3.5.500",
+ com.google.guava;bundle-version="21.0.0",
+ org.eclipse.papyrus.uml.tools;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.modelrepair;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.infra.viewpoints.policy;bundle-version="[2.0.0,3.0.0)"
+Export-Package: org.eclipse.papyrus.interoperability.rsa,
+ org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters,
+ org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl,
+ org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.util,
+ org.eclipse.papyrus.interoperability.rsa.blackbox,
+ org.eclipse.papyrus.interoperability.rsa.concurrent,
+ org.eclipse.papyrus.interoperability.rsa.default_,
+ org.eclipse.papyrus.interoperability.rsa.default_.impl,
+ org.eclipse.papyrus.interoperability.rsa.default_.util,
+ org.eclipse.papyrus.interoperability.rsa.diagramholder,
+ org.eclipse.papyrus.interoperability.rsa.diagramholder.impl,
+ org.eclipse.papyrus.interoperability.rsa.diagramholder.util,
+ org.eclipse.papyrus.interoperability.rsa.handler,
+ org.eclipse.papyrus.interoperability.rsa.internal;x-internal:=true,
+ org.eclipse.papyrus.interoperability.rsa.internal.extension,
+ org.eclipse.papyrus.interoperability.rsa.profilebase,
+ org.eclipse.papyrus.interoperability.rsa.profilebase.impl,
+ org.eclipse.papyrus.interoperability.rsa.profilebase.util,
+ org.eclipse.papyrus.interoperability.rsa.transformation,
+ org.eclipse.papyrus.interoperability.rsa.umlnotation,
+ org.eclipse.papyrus.interoperability.rsa.umlnotation.impl,
+ org.eclipse.papyrus.interoperability.rsa.umlnotation.util
+Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-ClassPath: .
+Bundle-Version: 1.4.0.qualifier
+Bundle-Localization: plugin
+Bundle-Name: %pluginName
+Bundle-Activator: org.eclipse.papyrus.interoperability.rsa.Activator
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.eclipse.papyrus.interoperability.rsa;singleton:=true
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/about.html b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/about.html
new file mode 100644
index 0000000..dd3c089
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/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 14, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, "Program" 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 ("Redistributor") 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>
\ No newline at end of file
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/build.properties b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/build.properties
new file mode 100644
index 0000000..6c9eb38
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/build.properties
@@ -0,0 +1,13 @@
+source.. = src/,\
+ src-gen/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ plugin.xml,\
+ model/,\
+ transform/,\
+ plugin.properties,\
+ about.html,\
+ dialog/,\
+ icons/
+src.includes = about.html
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/RSAToPapyrusParameters.ctx b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/RSAToPapyrusParameters.ctx
new file mode 100644
index 0000000..aa96031
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/RSAToPapyrusParameters.ctx
@@ -0,0 +1,85 @@
+<?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="_zJ4D0HZLEeSwiJkQAQl2Jg" name="RSAToPapyrusParameters">
+ <tabs xmi:id="_5w-6sHZLEeSwiJkQAQl2Jg" label="RSAToPapyrusParameters" id="rsatopapyrusparameters" priority="100">
+ <sections xmi:id="_5w-6sXZLEeSwiJkQAQl2Jg" name="Single Config" sectionFile="ui/SingleConfig.xwt">
+ <widget href="ui/SingleConfig.xwt#/"/>
+ </sections>
+ <sections xmi:id="_5w-6snZLEeSwiJkQAQl2Jg" name="Single MappingParameters" sectionFile="ui/SingleMappingParameters.xwt">
+ <widget href="ui/SingleMappingParameters.xwt#/"/>
+ </sections>
+ <sections xmi:id="_5w-6s3ZLEeSwiJkQAQl2Jg" name="Single URIMapping" sectionFile="ui/SingleURIMapping.xwt">
+ <widget href="ui/SingleURIMapping.xwt#/"/>
+ </sections>
+ <sections xmi:id="_5w-6tHZLEeSwiJkQAQl2Jg" name="Multiple Config" sectionFile="ui/MultipleConfig.xwt">
+ <widget href="ui/MultipleConfig.xwt#/"/>
+ </sections>
+ <sections xmi:id="_5w-6tXZLEeSwiJkQAQl2Jg" name="Multiple MappingParameters" sectionFile="ui/MultipleMappingParameters.xwt">
+ <widget href="ui/MultipleMappingParameters.xwt#/"/>
+ </sections>
+ <sections xmi:id="_5w-6tnZLEeSwiJkQAQl2Jg" name="Multiple URIMapping" sectionFile="ui/MultipleURIMapping.xwt">
+ <widget href="ui/MultipleURIMapping.xwt#/"/>
+ </sections>
+ </tabs>
+ <views xmi:id="_zJ4D0XZLEeSwiJkQAQl2Jg" name="Single Config" sections="_5w-6sXZLEeSwiJkQAQl2Jg" automaticContext="true" datacontexts="_zJ4D6nZLEeSwiJkQAQl2Jg">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_zJ4D0nZLEeSwiJkQAQl2Jg" name="isSingleConfig">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D03ZLEeSwiJkQAQl2Jg" name="className" value="Config"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D1HZLEeSwiJkQAQl2Jg" name="nsUri" value="http:///RSAToPapyrusParameters.ecore"/>
+ </constraints>
+ </views>
+ <views xmi:id="_zJ4D1XZLEeSwiJkQAQl2Jg" name="Single MappingParameters" sections="_5w-6snZLEeSwiJkQAQl2Jg" automaticContext="true" datacontexts="_zJ4D8XZLEeSwiJkQAQl2Jg">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_zJ4D1nZLEeSwiJkQAQl2Jg" name="isSingleMappingParameters">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D13ZLEeSwiJkQAQl2Jg" name="nsUri" value="http:///RSAToPapyrusParameters.ecore"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D2HZLEeSwiJkQAQl2Jg" name="className" value="MappingParameters"/>
+ </constraints>
+ </views>
+ <views xmi:id="_zJ4D2XZLEeSwiJkQAQl2Jg" name="Single URIMapping" sections="_5w-6s3ZLEeSwiJkQAQl2Jg" automaticContext="true" datacontexts="_zJ4D83ZLEeSwiJkQAQl2Jg">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_zJ4D2nZLEeSwiJkQAQl2Jg" name="isSingleURIMapping">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D23ZLEeSwiJkQAQl2Jg" name="nsUri" value="http:///RSAToPapyrusParameters.ecore"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D3HZLEeSwiJkQAQl2Jg" name="className" value="URIMapping"/>
+ </constraints>
+ </views>
+ <views xmi:id="_zJ4D3XZLEeSwiJkQAQl2Jg" elementMultiplicity="-1" name="Multiple Config" sections="_5w-6tHZLEeSwiJkQAQl2Jg" automaticContext="true" datacontexts="_zJ4D6nZLEeSwiJkQAQl2Jg">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_zJ4D3nZLEeSwiJkQAQl2Jg" name="isMultipleConfig">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D33ZLEeSwiJkQAQl2Jg" name="className" value="Config"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D4HZLEeSwiJkQAQl2Jg" name="nsUri" value="http:///RSAToPapyrusParameters.ecore"/>
+ </constraints>
+ </views>
+ <views xmi:id="_zJ4D4XZLEeSwiJkQAQl2Jg" elementMultiplicity="-1" name="Multiple MappingParameters" sections="_5w-6tXZLEeSwiJkQAQl2Jg" automaticContext="true" datacontexts="_zJ4D8XZLEeSwiJkQAQl2Jg">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_zJ4D4nZLEeSwiJkQAQl2Jg" name="isMultipleMappingParameters">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D43ZLEeSwiJkQAQl2Jg" name="className" value="MappingParameters"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D5HZLEeSwiJkQAQl2Jg" name="nsUri" value="http:///RSAToPapyrusParameters.ecore"/>
+ </constraints>
+ </views>
+ <views xmi:id="_zJ4D5XZLEeSwiJkQAQl2Jg" elementMultiplicity="-1" name="Multiple URIMapping" sections="_5w-6tnZLEeSwiJkQAQl2Jg" automaticContext="true" datacontexts="_zJ4D83ZLEeSwiJkQAQl2Jg">
+ <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_zJ4D5nZLEeSwiJkQAQl2Jg" name="isMultipleURIMapping">
+ <constraintType href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@constraintTypes.0"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D53ZLEeSwiJkQAQl2Jg" name="className" value="URIMapping"/>
+ <properties xsi:type="constraints:ValueProperty" xmi:id="_zJ4D6HZLEeSwiJkQAQl2Jg" name="nsUri" value="http:///RSAToPapyrusParameters.ecore"/>
+ </constraints>
+ </views>
+ <dataContexts xmi:id="_zJ4D6XZLEeSwiJkQAQl2Jg" name="RSAToPapyrusParameters" label="RSAToPapyrusParameters">
+ <elements xmi:id="_zJ4D6nZLEeSwiJkQAQl2Jg" name="Config">
+ <properties xmi:id="_zJ4D63ZLEeSwiJkQAQl2Jg" name="mappingParameters" type="Reference"/>
+ <properties xmi:id="_zJ4D7HZLEeSwiJkQAQl2Jg" name="maxThreads" type="Integer" description="The maximum number of threads to use during the migration.
More threads will provide faster results, at the cost of memory consumption."/>
+ <properties xmi:id="_zJ4D7XZLEeSwiJkQAQl2Jg" name="removeUnmappedDiagrams" type="Boolean" description="If true, the diagrams which were not migrated will be removed. Otherwise, only the successfully imported diagrams will be removed"/>
+ <properties xmi:id="_zJ4D7nZLEeSwiJkQAQl2Jg" name="convertOpaqueExpressionToLiteralString" type="Boolean" description="If true, the Opaque Expressions with a single body and no language (or a single empty language) will be converted to LiteralString"/>
+ <properties xmi:id="_zJ4D73ZLEeSwiJkQAQl2Jg" name="removeUnmappedProfilesAndStereotypes" type="Boolean" description="If true, all unsupported RSA profiles and stereotypes will be deleted at the end of the transformation"/>
+ <properties xmi:id="_zJ4D8HZLEeSwiJkQAQl2Jg" name="removeUnmappedAnnotations" type="Boolean" description="If true, the unmapped RSA EAnnotations will be deleted from the imported model"/>
+ <properties xmi:id="_jJtVUHcbEeSwiJkQAQl2Jg" name="alwaysAcceptSuggestedMappings" type="Boolean" description="If true, the Transformation will not open a dialog to ask user-confirmation for the dependency mappings. The tool will automatically keep going by "guessing" the proper mapping"/>
+ </elements>
+ <elements xmi:id="_zJ4D8XZLEeSwiJkQAQl2Jg" name="MappingParameters">
+ <properties xmi:id="_zJ4D8nZLEeSwiJkQAQl2Jg" name="uriMappings" label="URI Mappings" type="Reference" multiplicity="-1" description="When models/libraries have been migrated separately, maps the libraries imported from RSA to their Papyrus equivalent"/>
+ <properties xmi:id="_u4aUoNexEeSrN8eFf6IVtg" name="profileUriMappings" label="Profile URI Mappings" type="Reference" multiplicity="-1" description="When profiles have been migrated separately, maps the profiles imported from RSA to their Papyrus equivalent"/>
+ </elements>
+ <elements xmi:id="_zJ4D83ZLEeSwiJkQAQl2Jg" name="URIMapping">
+ <properties xmi:id="_zJ4D9HZLEeSwiJkQAQl2Jg" name="sourceURI"/>
+ <properties xmi:id="_zJ4D9XZLEeSwiJkQAQl2Jg" name="targetURI"/>
+ </elements>
+ <modelElementFactory href="ppe:/environment/org.eclipse.papyrus.infra.properties.ui/model/Environment.xmi#//@modelElementFactories.0"/>
+ </dataContexts>
+</contexts:Context>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleConfig.xwt b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleConfig.xwt
new file mode 100644
index 0000000..8b69f2a
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleConfig.xwt
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns:x="http://www.eclipse.org/xwt"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
+ xmlns:j="clr-namespace:java.lang" xmlns="http://www.eclipse.org/xwt/presentation">
+ <Composite.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Composite.layout>
+</Composite>
\ No newline at end of file
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleMappingParameters.xwt b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleMappingParameters.xwt
new file mode 100644
index 0000000..8b69f2a
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleMappingParameters.xwt
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns:x="http://www.eclipse.org/xwt"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
+ xmlns:j="clr-namespace:java.lang" xmlns="http://www.eclipse.org/xwt/presentation">
+ <Composite.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Composite.layout>
+</Composite>
\ No newline at end of file
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleURIMapping.xwt b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleURIMapping.xwt
new file mode 100644
index 0000000..c4d4153
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/MultipleURIMapping.xwt
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:x="http://www.eclipse.org/xwt"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
+ xmlns:j="clr-namespace:java.lang" xmlns="http://www.eclipse.org/xwt/presentation">
+ <Composite.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:StringEditor input="{Binding}"
+ property="RSAToPapyrusParameters:URIMapping:targetURI"></ppe:StringEditor>
+ </Composite>
+</Composite>
\ No newline at end of file
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleConfig.xwt b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleConfig.xwt
new file mode 100644
index 0000000..abc2a36
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleConfig.xwt
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite 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" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns="http://www.eclipse.org/xwt/presentation">
+ <Composite.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:BooleanCheckbox input="{Binding}"
+ property="RSAToPapyrusParameters:Config:convertOpaqueExpressionToLiteralString"></ppe:BooleanCheckbox>
+ <ppe:BooleanCheckbox input="{Binding}"
+ property="RSAToPapyrusParameters:Config:removeUnmappedProfilesAndStereotypes"></ppe:BooleanCheckbox>
+ <ppe:BooleanCheckbox
+ property="RSAToPapyrusParameters:Config:alwaysAcceptSuggestedMappings"
+ input="{Binding}"></ppe:BooleanCheckbox>
+ <ppe:IntegerEditor input="{Binding}"
+ property="RSAToPapyrusParameters:Config:maxThreads"></ppe:IntegerEditor>
+ </Composite>
+</Composite>
\ No newline at end of file
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleMappingParameters.xwt b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleMappingParameters.xwt
new file mode 100644
index 0000000..6dd88bc
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleMappingParameters.xwt
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns:j="clr-namespace:java.lang" xmlns:x="http://www.eclipse.org/xwt"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
+ xmlns="http://www.eclipse.org/xwt/presentation" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets">
+ <Composite.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:MultiReference input="{Binding}"
+ property="RSAToPapyrusParameters:MappingParameters:uriMappings"></ppe:MultiReference>
+ <ppe:MultiReference
+ property="RSAToPapyrusParameters:MappingParameters:profileUriMappings"
+ input="{Binding}"></ppe:MultiReference>
+ </Composite>
+</Composite>
\ No newline at end of file
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleURIMapping.xwt b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleURIMapping.xwt
new file mode 100644
index 0000000..80a764d
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/dialog/ui/SingleURIMapping.xwt
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Composite xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets"
+ xmlns:x="http://www.eclipse.org/xwt"
+ xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout"
+ xmlns:j="clr-namespace:java.lang" xmlns="http://www.eclipse.org/xwt/presentation">
+ <Composite.layout>
+ <ppel:PropertiesLayout></ppel:PropertiesLayout>
+ </Composite.layout>
+ <Composite>
+ <Composite.layout>
+ <ppel:PropertiesLayout numColumns="1"></ppel:PropertiesLayout>
+ </Composite.layout>
+ <ppe:StringEditor input="{Binding}"
+ property="RSAToPapyrusParameters:URIMapping:sourceURI"></ppe:StringEditor>
+ <ppe:StringEditor input="{Binding}"
+ property="RSAToPapyrusParameters:URIMapping:targetURI"></ppe:StringEditor>
+ </Composite>
+</Composite>
\ No newline at end of file
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/icons/import_wiz_16x16.gif b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/icons/import_wiz_16x16.gif
new file mode 100644
index 0000000..c7be463
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/icons/import_wiz_16x16.gif
Binary files differ
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/DiagramHolder.ecore b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/DiagramHolder.ecore
new file mode 100644
index 0000000..74a5c1c
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/DiagramHolder.ecore
@@ -0,0 +1,9 @@
+<?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="diagramholder" nsURI="http://www.eclipse.org/papyrus/migration/diagramholder"
+ nsPrefix="res">
+ <eClassifiers xsi:type="ecore:EClass" name="DiagramHolder" eSuperTypes="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="ownedDiagrams" upperBound="-1"
+ eType="ecore:EClass http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/DiagramHolder.genmodel b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/DiagramHolder.genmodel
new file mode 100644
index 0000000..6fa12c1
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/DiagramHolder.genmodel
@@ -0,0 +1,21 @@
+<?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="Copyright (c) 2015 CEA LIST.

All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html

Contributors:
	Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation"
+ modelDirectory="/org.eclipse.papyrus.interoperability.rsa/src-gen" editDirectory="/org.eclipse.papyrus.interoperability.rsa.edit/src-gen"
+ editorDirectory="/org.eclipse.papyrus.interoperability.rsa.editor/src-gen" modelPluginID="org.eclipse.papyrus.interoperability.rsa"
+ modelName="DiagramHolder" editPluginClass="org.eclipse.papyrus.interoperability.rsa.diagramholder.provider.DiagramHolderEditPlugin"
+ editorPluginClass="org.eclipse.papyrus.interoperability.rsa.diagramholder.presentation.DiagramHolderEditorPlugin"
+ rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" testsDirectory="/org.eclipse.papyrus.interoperability.rsa.tests/src-gen"
+ testSuiteClass="org.eclipse.papyrus.interoperability.rsa.diagramholder.tests.DiagramHolderAllTests"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false"
+ editPluginID="org.eclipse.papyrus.interoperability.rsa.edit" editorPluginID="org.eclipse.papyrus.interoperability.rsa.editor"
+ usedGenPackages="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore PapyrusUMLNotation.genmodel#//notation"
+ operationReflection="true" importOrganizing="true">
+ <foreignModel>DiagramHolder.ecore</foreignModel>
+ <genPackages prefix="DiagramHolder" basePackage="org.eclipse.papyrus.interoperability.rsa"
+ disposableProviderFactory="true" ecorePackage="DiagramHolder.ecore#/">
+ <genClasses ecoreClass="DiagramHolder.ecore#//DiagramHolder">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DiagramHolder.ecore#//DiagramHolder/ownedDiagrams"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusDefault.ecore b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusDefault.ecore
new file mode 100644
index 0000000..a3f7d0c
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusDefault.ecore
@@ -0,0 +1,51 @@
+<?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="default" nsURI="http://www.eclipse.org/papyrus/profile/default"
+ nsPrefix="default">
+ <eClassifiers xsi:type="ecore:EClass" name="Documentation">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Comment" lowerBound="1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Comment"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="URL">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Comment" lowerBound="1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Comment"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="displayName" lowerBound="1"
+ eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="icon" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EByteArray"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Link" eSuperTypes="#//URL"/>
+ <eClassifiers xsi:type="ecore:EClass" name="AbstractConstraint" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Constraint" lowerBound="1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Constraint"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="evaluationMode" lowerBound="1"
+ eType="#//Mode" defaultValueLiteral="batch"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="severity" lowerBound="1"
+ eType="#//Severity" defaultValueLiteral="error"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MetaConstraint" eSuperTypes="#//AbstractConstraint">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="message" lowerBound="1"
+ eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MarkingModel">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Package" lowerBound="1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Package"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MarkingImport">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_ElementImport" lowerBound="1"
+ eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//ElementImport"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="Mode">
+ <eLiterals name="batch"/>
+ <eLiterals name="live" value="1"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="Severity">
+ <eLiterals name="error"/>
+ <eLiterals name="warning" value="1"/>
+ <eLiterals name="info" value="2"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="DefaultLanguage">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="base_Package" eType="ecore:EClass platform:/plugin/org.eclipse.uml2.uml/model/UML.ecore#//Package"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultLanguage" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusDefault.genmodel b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusDefault.genmodel
new file mode 100644
index 0000000..eb9a216
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusDefault.genmodel
@@ -0,0 +1,55 @@
+<?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=" * Copyright (c) 2013, 2014 CEA LIST.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation"
+ modelDirectory="/org.eclipse.papyrus.interoperability.rsa/src-gen" editDirectory="/org.eclipse.papyrus.interoperability.rsa.edit/src-gen"
+ editorDirectory="/org.eclipse.papyrus.interoperability.rsa.editor/src-gen" modelPluginID="org.eclipse.papyrus.interoperability.rsa"
+ modelName="PapyrusDefault" editPluginClass="org.eclipse.papyrus.interoperability.rsa.default_.provider.PapyrusDefaultEditPlugin"
+ editorPluginClass="org.eclipse.papyrus.interoperability.rsa.default_.presentation.PapyrusDefaultEditorPlugin"
+ rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" testsDirectory="/org.eclipse.papyrus.interoperability.rsa.tests/src-gen"
+ testSuiteClass="org.eclipse.papyrus.interoperability.rsa.default_.tests.PapyrusDefaultAllTests"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false"
+ editPluginID="org.eclipse.papyrus.interoperability.rsa.edit" editorPluginID="org.eclipse.papyrus.interoperability.rsa.editor"
+ 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">
+ <foreignModel>PapyrusDefault.ecore</foreignModel>
+ <genPackages prefix="Default" basePackage="org.eclipse.papyrus.interoperability.rsa"
+ resource="XML" disposableProviderFactory="true" ecorePackage="PapyrusDefault.ecore#/">
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="PapyrusDefault.ecore#//Mode">
+ <genEnumLiterals ecoreEnumLiteral="PapyrusDefault.ecore#//Mode/batch"/>
+ <genEnumLiterals ecoreEnumLiteral="PapyrusDefault.ecore#//Mode/live"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="PapyrusDefault.ecore#//Severity">
+ <genEnumLiterals ecoreEnumLiteral="PapyrusDefault.ecore#//Severity/error"/>
+ <genEnumLiterals ecoreEnumLiteral="PapyrusDefault.ecore#//Severity/warning"/>
+ <genEnumLiterals ecoreEnumLiteral="PapyrusDefault.ecore#//Severity/info"/>
+ </genEnums>
+ <genClasses ecoreClass="PapyrusDefault.ecore#//Documentation">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference PapyrusDefault.ecore#//Documentation/base_Comment"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusDefault.ecore#//URL">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference PapyrusDefault.ecore#//URL/base_Comment"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusDefault.ecore#//URL/type"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusDefault.ecore#//URL/displayName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusDefault.ecore#//URL/icon"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusDefault.ecore#//Link"/>
+ <genClasses image="false" ecoreClass="PapyrusDefault.ecore#//AbstractConstraint">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference PapyrusDefault.ecore#//AbstractConstraint/base_Constraint"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusDefault.ecore#//AbstractConstraint/evaluationMode"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusDefault.ecore#//AbstractConstraint/severity"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusDefault.ecore#//MetaConstraint">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusDefault.ecore#//MetaConstraint/message"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusDefault.ecore#//MarkingModel">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference PapyrusDefault.ecore#//MarkingModel/base_Package"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusDefault.ecore#//MarkingImport">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference PapyrusDefault.ecore#//MarkingImport/base_ElementImport"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusDefault.ecore#//DefaultLanguage">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference PapyrusDefault.ecore#//DefaultLanguage/base_Package"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusDefault.ecore#//DefaultLanguage/defaultLanguage"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusProfileBase.ecore b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusProfileBase.ecore
new file mode 100644
index 0000000..1206bdb
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusProfileBase.ecore
@@ -0,0 +1,9 @@
+<?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="profilebase" nsURI="http://www.eclipse.org/papyrus/profile/profilebase"
+ nsPrefix="ProfileBase">
+ <eClassifiers xsi:type="ecore:EClass" name="ProfileConstraint" eSuperTypes="PapyrusDefault.ecore#//AbstractConstraint">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="messageKey" lowerBound="1"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusProfileBase.genmodel b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusProfileBase.genmodel
new file mode 100644
index 0000000..f925323
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusProfileBase.genmodel
@@ -0,0 +1,21 @@
+<?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=" * Copyright (c) 2013, 2014 CEA LIST.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation"
+ modelDirectory="/org.eclipse.papyrus.interoperability.rsa/src-gen" editDirectory="/org.eclipse.papyrus.interoperability.rsa.edit/src-gen"
+ editorDirectory="/org.eclipse.papyrus.interoperability.rsa.editor/src-gen" modelPluginID="org.eclipse.papyrus.interoperability.rsa"
+ templateDirectory="" modelName="PapyrusProfileBase" editPluginClass="org.eclipse.papyrus.interoperability.rsa.profilebase.provider.PapyrusProfileBaseEditPlugin"
+ editorPluginClass="org.eclipse.papyrus.interoperability.rsa.profilebase.presentation.PapyrusProfileBaseEditorPlugin"
+ rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" testsDirectory="/org.eclipse.papyrus.interoperability.rsa.tests/src-gen"
+ testSuiteClass="org.eclipse.papyrus.interoperability.rsa.profilebase.tests.PapyrusProfileBaseAllTests"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false"
+ editPluginID="org.eclipse.papyrus.interoperability.rsa.edit" editorPluginID="org.eclipse.papyrus.interoperability.rsa.editor"
+ language="" usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore PapyrusDefault.genmodel#//default ../../org.eclipse.uml2.types/model/Types.genmodel#//types ../../org.eclipse.uml2.uml/model/UML.genmodel#//uml"
+ operationReflection="true" importOrganizing="true">
+ <foreignModel>PapyrusProfileBase.ecore</foreignModel>
+ <genPackages prefix="ProfileBase" basePackage="org.eclipse.papyrus.interoperability.rsa"
+ resource="XML" disposableProviderFactory="true" ecorePackage="PapyrusProfileBase.ecore#/">
+ <genClasses ecoreClass="PapyrusProfileBase.ecore#//ProfileConstraint">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusProfileBase.ecore#//ProfileConstraint/messageKey"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.ecore b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.ecore
new file mode 100644
index 0000000..ac19264
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.ecore
@@ -0,0 +1,30 @@
+<?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="umlnotation" nsURI="http://www.eclipse.org/papyrus/umlnotation"
+ nsPrefix="umlnotationext">
+ <eClassifiers xsi:type="ecore:EClass" name="UMLDiagram" eSuperTypes="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram #//UMLView"/>
+ <eClassifiers xsi:type="ecore:EClass" name="UMLFrame" eSuperTypes="#//UMLShape"/>
+ <eClassifiers xsi:type="ecore:EClass" name="UMLShapeCompartment" eSuperTypes="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Compartment #//UMLView">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="verticalAlignment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="UMLShape" eSuperTypes="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Shape #//UMLView"/>
+ <eClassifiers xsi:type="ecore:EClass" name="UMLConnector" eSuperTypes="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Connector http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle #//UMLView"/>
+ <eClassifiers xsi:type="ecore:EClass" name="UMLView" abstract="true" eSuperTypes="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="showStereotype" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="showListVisibility" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
+ defaultValueLiteral="None"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="showListSignature" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
+ defaultValueLiteral="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="alignment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="showStereotypeAttributeCompartment"
+ eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="showListStereotype" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="UMLComponent" eSuperTypes="#//UMLShape">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="showWhitebox" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="UMLClassifierShape" eSuperTypes="#//UMLShape">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="useClassifierShape" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.genmodel b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.genmodel
new file mode 100644
index 0000000..671c612
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.genmodel
@@ -0,0 +1,398 @@
+<?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=" * Copyright (c) 2013, 2014 CEA LIST.
 *
 * All rights reserved. This program and the accompanying materials
 * are made available under the terms of the Eclipse Public License v1.0
 * which accompanies this distribution, and is available at
 * http://www.eclipse.org/legal/epl-v10.html
 *
 * Contributors:
 * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation"
+ modelDirectory="/org.eclipse.papyrus.interoperability.rsa/src-gen" editDirectory="/org.eclipse.papyrus.interoperability.rsa.edit/src"
+ editorDirectory="/org.eclipse.papyrus.interoperability.rsa.editor/src" modelPluginID="org.eclipse.papyrus.interoperability.rsa"
+ modelName="PapyrusUMLNotation" editPluginClass="org.eclipse.papyrus.interoperability.rsa.umlnotation.provider.PapyrusUMLNotationEditPlugin"
+ editorPluginClass="org.eclipse.papyrus.interoperability.rsa.umlnotation.presentation.PapyrusUMLNotationEditorPlugin"
+ rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" testSuiteClass="org.eclipse.papyrus.interoperability.rsa.umlnotation.tests.PapyrusUMLNotationAllTests"
+ importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0" copyrightFields="false"
+ editPluginID="org.eclipse.papyrus.interoperability.rsa.edit" editorPluginID="org.eclipse.papyrus.interoperability.rsa.editor"
+ language="" operationReflection="true" importOrganizing="true">
+ <foreignModel>PapyrusUMLNotation.ecore</foreignModel>
+ <genPackages prefix="PapyrusUMLNotation" basePackage="org.eclipse.papyrus.interoperability.rsa"
+ disposableProviderFactory="true" contentTypeIdentifier="" fileExtensions="umlnotation"
+ ecorePackage="PapyrusUMLNotation.ecore#/">
+ <genClasses ecoreClass="PapyrusUMLNotation.ecore#//UMLDiagram"/>
+ <genClasses ecoreClass="PapyrusUMLNotation.ecore#//UMLFrame"/>
+ <genClasses ecoreClass="PapyrusUMLNotation.ecore#//UMLShapeCompartment">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLShapeCompartment/verticalAlignment"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusUMLNotation.ecore#//UMLShape"/>
+ <genClasses ecoreClass="PapyrusUMLNotation.ecore#//UMLConnector"/>
+ <genClasses image="false" ecoreClass="PapyrusUMLNotation.ecore#//UMLView">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLView/showStereotype"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLView/showListVisibility"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLView/showListSignature"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLView/alignment"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLView/showStereotypeAttributeCompartment"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLView/showListStereotype"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusUMLNotation.ecore#//UMLComponent">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLComponent/showWhitebox"/>
+ </genClasses>
+ <genClasses ecoreClass="PapyrusUMLNotation.ecore#//UMLClassifierShape">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute PapyrusUMLNotation.ecore#//UMLClassifierShape/useClassifierShape"/>
+ </genClasses>
+ </genPackages>
+ <genPackages prefix="Notation" ecorePackage="http://www.eclipse.org/gmf/runtime/1.0.2/notation#/">
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Sorting">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Sorting/None"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Sorting/Manual"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Sorting/Automatic"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Filtering">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Filtering/None"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Filtering/Manual"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Filtering/Automatic"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Routing">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Routing/Manual"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Routing/Rectilinear"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Routing/Tree"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Smoothness">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Smoothness/None"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Smoothness/Normal"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Smoothness/Less"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Smoothness/More"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkStatus">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkStatus/None"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkStatus/All"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkStatus/Below"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkStatus/Above"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkType">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkType/Semicircle"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkType/Square"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//JumpLinkType/Chamfered"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Alignment">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Alignment/Left"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Alignment/Right"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Alignment/Center"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Alignment/Top"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Alignment/Bottom"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SortingDirection">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SortingDirection/Ascending"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SortingDirection/Descending"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//MeasurementUnit">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//MeasurementUnit/Himetric"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//MeasurementUnit/Pixel"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//TextAlignment">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//TextAlignment/Left"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//TextAlignment/Right"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//TextAlignment/Center"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineType">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineType/Solid"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineType/Dash"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineType/Dot"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineType/DashDot"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineType/DashDotDot"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineType/Double"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ArrowType">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ArrowType/None"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ArrowType/OpenArrow"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ArrowType/SolidArrow"/>
+ </genEnums>
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//GradientStyle">
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//GradientStyle/Vertical"/>
+ <genEnumLiterals ecoreEnumLiteral="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//GradientStyle/Horizontal"/>
+ </genEnums>
+ <genDataTypes ecoreDataType="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RelativeBendpointList"/>
+ <genDataTypes ecoreDataType="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FilterKeyList"/>
+ <genDataTypes ecoreDataType="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SortKeyMap"/>
+ <genDataTypes ecoreDataType="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//GradientData"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/source"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/target"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/bendpoints"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/sourceAnchor"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/targetAnchor"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/createBendpoints">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/createBendpoints/eClass"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/createSourceAnchor">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/createSourceAnchor/eClass"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/createTargetAnchor">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Edge/createTargetAnchor/eClass"/>
+ </genOperations>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Node">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Node/layoutConstraint"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Node/createLayoutConstraint">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Node/createLayoutConstraint/eClass"/>
+ </genOperations>
+ </genClasses>
+ <genClasses image="false" ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Style"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FillStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FillStyle/fillColor"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FillStyle/transparency"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FillStyle/gradient"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineStyle/lineColor"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineStyle/lineWidth"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle/fontColor"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle/fontName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle/fontHeight"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle/bold"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle/italic"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle/underline"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FontStyle/strikeThrough"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//TitleStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//TitleStyle/showTitle"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SortingStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SortingStyle/sorting"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SortingStyle/sortingKeys"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SortingStyle/sortedObjects"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DescriptionStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DescriptionStyle/description"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LayoutConstraint"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Size">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Size/width"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Size/height"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Location">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Location/x"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Location/y"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Bounds"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Ratio">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Ratio/value"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Anchor"/>
+ <genClasses image="false" ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Bendpoints"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//IdentityAnchor">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//IdentityAnchor/id"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoutingStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoutingStyle/routing"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoutingStyle/smoothness"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoutingStyle/avoidObstructions"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoutingStyle/closestDistance"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoutingStyle/jumpLinkStatus"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoutingStyle/jumpLinkType"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoutingStyle/jumpLinksReverse"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/visible"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/type"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/mutable"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/sourceEdges"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/targetEdges"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/children"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/styles"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/element"/>
+ <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/diagram"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/transientChildren"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/getStyle">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/getStyle/eClass"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/createChild">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/createChild/eClass"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/createStyle">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/createStyle/eClass"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/getNamedStyle">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/getNamedStyle/eClass"/>
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//View/getNamedStyle/name"/>
+ </genOperations>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RelativeBendpoints">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RelativeBendpoints/points"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram/name"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram/measurementUnit"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram/edges"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram/TransientEdges"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram/createEdge">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Diagram/createEdge/eClass"/>
+ </genOperations>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Image">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Image/data"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//CanonicalStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//CanonicalStyle/canonical"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ShapeStyle"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ConnectorStyle"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PageStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PageStyle/pageX"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PageStyle/pageY"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PageStyle/pageWidth"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PageStyle/pageHeight"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DrawerStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DrawerStyle/collapsed"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//GuideStyle">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//GuideStyle/horizontalGuides"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//GuideStyle/verticalGuides"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Guide">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Guide/position"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Guide/nodeMap"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//NodeEntry">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//NodeEntry/value"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//NodeEntry/key"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FilteringStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FilteringStyle/filtering"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FilteringStyle/filteringKeys"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//FilteringStyle/filteredObjects"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DiagramStyle"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ImageStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ImageStyle/antiAlias"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ImageStyle/maintainAspectRatio"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ImageStyle/cropBound"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ImageBufferStyle">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ImageBufferStyle/imageBuffer"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/propertiesMap"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/getProperty">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/getProperty/propertyName"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/setProperty">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/setProperty/propertyName"/>
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/setProperty/newValue"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/createProperty">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/createProperty/propertyName"/>
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/createProperty/instanceType"/>
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/createProperty/initialValue"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/removeProperty">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/removeProperty/propertyName"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/hasProperty">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/hasProperty/propertyName"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/createProperty.1">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/createProperty.1/propertyName"/>
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertiesSetStyle/createProperty.1/initialValue"/>
+ </genOperations>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringToPropertyValueMapEntry">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringToPropertyValueMapEntry/key"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringToPropertyValueMapEntry/value"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertyValue">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertyValue/rawValue"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertyValue/instanceType"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertyValue/getValue"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertyValue/setValue">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//PropertyValue/setValue/newValue"/>
+ </genOperations>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SingleValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SingleValueStyle/rawValue"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SingleValueStyle/getValue"/>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SingleValueStyle/setValue">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SingleValueStyle/setValue/newValue"/>
+ </genOperations>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ListValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ListValueStyle/rawValuesList"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//NamedStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//NamedStyle/name"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringObjectConverter">
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringObjectConverter/getStringFromObject">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringObjectConverter/getStringFromObject/objectValue"/>
+ </genOperations>
+ <genOperations ecoreOperation="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringObjectConverter/getObjectFromString">
+ <genParameters ecoreParameter="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringObjectConverter/getObjectFromString/stringValue"/>
+ </genOperations>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DataTypeStyle">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DataTypeStyle/instanceType"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//IntValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//IntValueStyle/intValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//IntListValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//IntListValueStyle/intListValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//BooleanValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//BooleanValueStyle/booleanValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DoubleValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DoubleValueStyle/doubleValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DoubleListValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DoubleListValueStyle/doubleListValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringValueStyle/stringValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringListValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StringListValueStyle/stringListValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//EObjectValueStyle">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//EObjectValueStyle/eObjectValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//EObjectListValueStyle">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//EObjectListValueStyle/eObjectListValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ByteArrayValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ByteArrayValueStyle/byteArrayValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//BooleanListValueStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//BooleanListValueStyle/booleanListValue"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//HintedDiagramLinkStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//HintedDiagramLinkStyle/hint"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DiagramLinkStyle">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DiagramLinkStyle/diagramLink"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//MultiDiagramLinkStyle">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference http://www.eclipse.org/gmf/runtime/1.0.2/notation#//MultiDiagramLinkStyle/diagramLinks"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//TextStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//TextStyle/textAlignment"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineTypeStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//LineTypeStyle/lineType"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ArrowStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ArrowStyle/arrowSource"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ArrowStyle/arrowTarget"/>
+ </genClasses>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Shape"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Compartment"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//ListCompartment"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//Connector"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//StandardDiagram"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//DecorationNode"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//BasicDecorationNode"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//BasicCompartment"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//BasicSemanticCompartment"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//SemanticListCompartment"/>
+ <genClasses ecoreClass="http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoundedCornersStyle">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute http://www.eclipse.org/gmf/runtime/1.0.2/notation#//RoundedCornersStyle/roundedBendpointsRadius"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.readme b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.readme
new file mode 100644
index 0000000..9879ff1
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/PapyrusUMLNotation.readme
@@ -0,0 +1,14 @@
+The PapyrusUMLNotation metamodel extends the Notation metamodel, which doesn't provide a Genmodel (And probably used non-standard code generation for Transient/Persisted links)
+
+Thus, when regenerating the PapyrusUMLNotation metamodel, it is required to do some manual clean-up in the generated code:
+
+- Remove the generated notation metamodel (Packages "notation", "notation.impl", "notation.util")
+- Replace all references to notation.* (especially notation.NotationPackage, notation.NotationPackageImpl) with proper version from GMF Notation (Import NotationPackage and NotationPackageImpl from GMF Notation)
+- Clean up the Manifest.mf and Plugin.xml (e.g. revert to last version)
+- Fix 'Persisted' methods (Compare with previous commit)
+- Remove support for generics in @Override methods (GMF Notation uses Java 1.4)
+
+Additionally, the EMF GenModel code generator evolves over time, and may add new concepts
+(with @Override annotations), that were not supported in the GMF Notation metamodel
+(e.g. support for EOperations). It may also be necessary to remove these generated
+methods/attributes/constants.
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/Default.uml b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/Default.uml
new file mode 100644
index 0000000..9a3e963
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/Default.uml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_Nfp9EKiGEeSPtOio57ufig" name="Default Dummy"/>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/ProfileBase.uml b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/ProfileBase.uml
new file mode 100644
index 0000000..f104b30
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/ProfileBase.uml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_YFn2MKiGEeSPtOio57ufig" name="ProfileBase Dummy"/>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/RealTime.uml b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/RealTime.uml
new file mode 100644
index 0000000..ed62500
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/profiles/RealTime.uml
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_1FAMEKiFEeSPtOio57ufig" name="RealTime Dummy"/>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/RSAToPapyrusParameters.ecore b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/RSAToPapyrusParameters.ecore
new file mode 100644
index 0000000..2b0b9c6
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/RSAToPapyrusParameters.ecore
@@ -0,0 +1,71 @@
+<?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="RSAToPapyrusParameters" nsURI="http:///RSAToPapyrusParameters.ecore"
+ nsPrefix="RSAToPapyrusParameters">
+ <eClassifiers xsi:type="ecore:EClass" name="Config">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="mappingParameters" ordered="false"
+ lowerBound="1" eType="#//MappingParameters" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="maxThreads" ordered="false"
+ unique="false" lowerBound="1" eType="ecore:EDataType ../../../org.eclipse.uml2.types/model/Types.ecore#//Integer"
+ defaultValueLiteral="2">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="The maximum number of threads to use during the migration.
More threads will provide faster results, at the cost of memory consumption."/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="removeUnmappedDiagrams"
+ ordered="false" unique="false" lowerBound="1" eType="ecore:EDataType ../../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
+ defaultValueLiteral="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="If true, the diagrams which were not migrated will be removed. Otherwise, only the successfully imported diagrams will be removed"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="convertOpaqueExpressionToLiteralString"
+ ordered="false" unique="false" lowerBound="1" eType="ecore:EDataType ../../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
+ defaultValueLiteral="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="If true, the Opaque Expressions with a single body and no language (or a single empty language) will be converted to LiteralString"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="removeUnmappedProfilesAndStereotypes"
+ ordered="false" unique="false" lowerBound="1" eType="ecore:EDataType ../../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
+ defaultValueLiteral="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="If true, all unsupported RSA profiles and stereotypes will be deleted at the end of the transformation"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="removeUnmappedAnnotations"
+ ordered="false" unique="false" lowerBound="1" eType="ecore:EDataType ../../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
+ defaultValueLiteral="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="If true, the unmapped RSA EAnnotations will be deleted from the imported model"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="alwaysAcceptSuggestedMappings"
+ ordered="false" lowerBound="1" eType="ecore:EDataType ../../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
+ defaultValueLiteral="false">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="If true, the Transformation will not open a dialog to ask user-confirmation for the dependency mappings. The tool will automatically keep going by "guessing" the proper mapping"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MappingParameters">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="uriMappings" ordered="false"
+ upperBound="-1" eType="#//URIMapping" containment="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="When models/libraries have been migrated separately, maps the libraries imported from RSA to their Papyrus equivalent"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="profileUriMappings" ordered="false"
+ upperBound="-1" eType="#//URIMapping" containment="true">
+ <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+ <details key="documentation" value="When profiles have been migrated separately, maps the profiles imported from RSA to their Papyrus equivalent"/>
+ </eAnnotations>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="URIMapping">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="sourceURI" ordered="false"
+ unique="false" lowerBound="1" eType="ecore:EDataType ../../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetURI" ordered="false"
+ unique="false" lowerBound="1" eType="ecore:EDataType ../../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+ </eClassifiers>
+</ecore:EPackage>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.di b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.di
new file mode 100644
index 0000000..bf9abab
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI"/>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.genmodel b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.genmodel
new file mode 100644
index 0000000..79372c7
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.genmodel
@@ -0,0 +1,63 @@
+<?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) 2014 CEA LIST.
 
All rights reserved. This program and the accompanying materials
are made available under the terms of the Eclipse Public License v1.0
which accompanies this distribution, and is available at
http://www.eclipse.org/legal/epl-v10.html

Contributors:
	Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation"
+ modelDirectory="/org.eclipse.papyrus.interoperability.rsa/src-gen" editDirectory="/org.eclipse.papyrus.interoperability.rsa.edit/src-gen"
+ editorDirectory="/org.eclipse.papyrus.interoperability.rsa.editor/src-gen" modelPluginID="org.eclipse.papyrus.interoperability.rsa"
+ modelName="RsaToPapyrusParameters" editPluginClass="org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.provider.RsaToPapyrusParametersEditPlugin"
+ editorPluginClass="org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.presentation.RsaToPapyrusParametersEditorPlugin"
+ rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" testsDirectory="/org.eclipse.papyrus.interoperability.rsa.tests/src-gen"
+ testSuiteClass="org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.tests.RsaToPapyrusParametersAllTests"
+ importerID="org.eclipse.uml2.uml.ecore.importer" complianceLevel="6.0" copyrightFields="false"
+ editPluginID="org.eclipse.papyrus.interoperability.rsa.edit" editorPluginID="org.eclipse.papyrus.interoperability.rsa.editor"
+ usedGenPackages="../../../org.eclipse.uml2.types/model/Types.genmodel#//types"
+ operationReflection="true" importOrganizing="true">
+ <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel/importer/org.eclipse.uml2.uml.ecore.importer">
+ <details key="ECORE_TAGGED_VALUES" value="PROCESS"/>
+ <details key="UNION_PROPERTIES" value="REPORT"/>
+ <details key="UNTYPED_PROPERTIES" value="REPORT"/>
+ <details key="DUPLICATE_FEATURES" value="DISCARD"/>
+ <details key="SUBSETTING_PROPERTIES" value="REPORT"/>
+ <details key="VALIDATION_DELEGATES" value="IGNORE"/>
+ <details key="OPPOSITE_ROLE_NAMES" value="IGNORE"/>
+ <details key="COMMENTS" value="PROCESS"/>
+ <details key="DUPLICATE_FEATURE_INHERITANCE" value="DISCARD"/>
+ <details key="DUPLICATE_OPERATIONS" value="DISCARD"/>
+ <details key="PROPERTY_DEFAULT_EXPRESSIONS" value="IGNORE"/>
+ <details key="INVARIANT_CONSTRAINTS" value="PROCESS"/>
+ <details key="REDEFINING_PROPERTIES" value="REPORT"/>
+ <details key="ANNOTATION_DETAILS" value="PROCESS"/>
+ <details key="NON_API_INVARIANTS" value="IGNORE"/>
+ <details key="DUPLICATE_OPERATION_INHERITANCE" value="DISCARD"/>
+ <details key="REDEFINING_OPERATIONS" value="REPORT"/>
+ <details key="INVOCATION_DELEGATES" value="IGNORE"/>
+ <details key="DERIVED_FEATURES" value="PROCESS"/>
+ <details key="OPERATION_BODIES" value="IGNORE"/>
+ <details key="CAMEL_CASE_NAMES" value="IGNORE"/>
+ <details key="SUPER_CLASS_ORDER" value="PROCESS"/>
+ </genAnnotations>
+ <foreignModel>rsaToPapyrusParameters.uml</foreignModel>
+ <genPackages xsi:type="genmodel:GenPackage" prefix="RSAToPapyrusParameters" basePackage="org.eclipse.papyrus.migration.rsa"
+ disposableProviderFactory="true" ecorePackage="RSAToPapyrusParameters.ecore#/">
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="RSAToPapyrusParameters.ecore#//Config">
+ <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+ createChild="true" ecoreFeature="ecore:EReference RSAToPapyrusParameters.ecore#//Config/mappingParameters"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute RSAToPapyrusParameters.ecore#//Config/maxThreads"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute RSAToPapyrusParameters.ecore#//Config/removeUnmappedDiagrams"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute RSAToPapyrusParameters.ecore#//Config/convertOpaqueExpressionToLiteralString"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute RSAToPapyrusParameters.ecore#//Config/removeUnmappedProfilesAndStereotypes"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute RSAToPapyrusParameters.ecore#//Config/removeUnmappedAnnotations"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute RSAToPapyrusParameters.ecore#//Config/alwaysAcceptSuggestedMappings"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="RSAToPapyrusParameters.ecore#//MappingParameters">
+ <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+ createChild="true" ecoreFeature="ecore:EReference RSAToPapyrusParameters.ecore#//MappingParameters/uriMappings"/>
+ <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+ createChild="true" ecoreFeature="ecore:EReference RSAToPapyrusParameters.ecore#//MappingParameters/profileUriMappings"/>
+ </genClasses>
+ <genClasses xsi:type="genmodel:GenClass" ecoreClass="RSAToPapyrusParameters.ecore#//URIMapping">
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute RSAToPapyrusParameters.ecore#//URIMapping/sourceURI"/>
+ <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute RSAToPapyrusParameters.ecore#//URIMapping/targetURI"/>
+ </genClasses>
+ </genPackages>
+</genmodel:GenModel>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.notation b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.notation
new file mode 100644
index 0000000..ece1798
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.notation
@@ -0,0 +1,196 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" 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.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/viewpoints/policy/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+ <notation:Diagram xmi:id="_ffjeAEL1EeSSlqpbHKLCqA" type="PapyrusUMLClassDiagram" name="Config" measurementUnit="Pixel">
+ <children xmi:type="notation:Shape" xmi:id="_tKu0kUL1EeSSlqpbHKLCqA" type="2008">
+ <children xmi:type="notation:DecorationNode" xmi:id="_tKu0k0L1EeSSlqpbHKLCqA" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_tKu0lEL1EeSSlqpbHKLCqA" type="7017">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_So1agHZLEeSwiJkQAQl2Jg" source="PapyrusCSSForceValue">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_So1agXZLEeSwiJkQAQl2Jg" key="visible" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:Shape" xmi:id="_AblmMFOJEeSGbsrkEkSKIA" type="3012">
+ <styles xmi:type="notation:StringListValueStyle" xmi:id="_GLzRUFOJEeSGbsrkEkSKIA" name="maskLabel">
+ <stringListValue>visibility</stringListValue>
+ <stringListValue>name</stringListValue>
+ <stringListValue>derived</stringListValue>
+ <stringListValue>multiplicity</stringListValue>
+ <stringListValue>defaultValue</stringListValue>
+ <stringListValue>type</stringListValue>
+ </styles>
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_AYwUoFOJEeSGbsrkEkSKIA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AblmMVOJEeSGbsrkEkSKIA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_WuBhgEL2EeSSlqpbHKLCqA" type="3012">
+ <styles xmi:type="notation:StringListValueStyle" xmi:id="_aEtJcEL2EeSSlqpbHKLCqA" name="maskLabel">
+ <stringListValue>visibility</stringListValue>
+ <stringListValue>name</stringListValue>
+ <stringListValue>derived</stringListValue>
+ <stringListValue>multiplicity</stringListValue>
+ <stringListValue>defaultValue</stringListValue>
+ <stringListValue>type</stringListValue>
+ </styles>
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_Wt4XkEL2EeSSlqpbHKLCqA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_WuBhgUL2EeSSlqpbHKLCqA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_t5AP0EL1EeSSlqpbHKLCqA" type="3012">
+ <styles xmi:type="notation:StringListValueStyle" xmi:id="_Ko_pYEL2EeSSlqpbHKLCqA" name="maskLabel">
+ <stringListValue>visibility</stringListValue>
+ <stringListValue>name</stringListValue>
+ <stringListValue>derived</stringListValue>
+ <stringListValue>multiplicity</stringListValue>
+ <stringListValue>defaultValue</stringListValue>
+ <stringListValue>type</stringListValue>
+ </styles>
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_t42e0EL1EeSSlqpbHKLCqA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_t5AP0UL1EeSSlqpbHKLCqA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_65zMoEL1EeSSlqpbHKLCqA" type="3012">
+ <styles xmi:type="notation:StringListValueStyle" xmi:id="_KNn8AEL2EeSSlqpbHKLCqA" name="maskLabel">
+ <stringListValue>visibility</stringListValue>
+ <stringListValue>name</stringListValue>
+ <stringListValue>derived</stringListValue>
+ <stringListValue>multiplicity</stringListValue>
+ <stringListValue>defaultValue</stringListValue>
+ <stringListValue>type</stringListValue>
+ </styles>
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_65pboEL1EeSSlqpbHKLCqA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_65zMoUL1EeSSlqpbHKLCqA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_Mv8HwUL2EeSSlqpbHKLCqA" type="3012">
+ <styles xmi:type="notation:StringListValueStyle" xmi:id="_VFcaIEL2EeSSlqpbHKLCqA" name="maskLabel">
+ <stringListValue>visibility</stringListValue>
+ <stringListValue>name</stringListValue>
+ <stringListValue>derived</stringListValue>
+ <stringListValue>multiplicity</stringListValue>
+ <stringListValue>defaultValue</stringListValue>
+ <stringListValue>type</stringListValue>
+ </styles>
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_Mv8HwEL2EeSSlqpbHKLCqA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Mv8HwkL2EeSSlqpbHKLCqA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_JWjgUXcbEeSwiJkQAQl2Jg" type="3012">
+ <styles xmi:type="notation:StringListValueStyle" xmi:id="_Ro7mMHcbEeSwiJkQAQl2Jg" name="maskLabel">
+ <stringListValue>visibility</stringListValue>
+ <stringListValue>name</stringListValue>
+ <stringListValue>derived</stringListValue>
+ <stringListValue>multiplicity</stringListValue>
+ <stringListValue>defaultValue</stringListValue>
+ <stringListValue>type</stringListValue>
+ </styles>
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_JWjgUHcbEeSwiJkQAQl2Jg"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_JWjgUncbEeSwiJkQAQl2Jg"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_tKu0lUL1EeSSlqpbHKLCqA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_tKu0lkL1EeSSlqpbHKLCqA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_tKu0l0L1EeSSlqpbHKLCqA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKu0mEL1EeSSlqpbHKLCqA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_tKu0mUL1EeSSlqpbHKLCqA" visible="false" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_tKu0mkL1EeSSlqpbHKLCqA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_tKu0m0L1EeSSlqpbHKLCqA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_tKu0nEL1EeSSlqpbHKLCqA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKu0nUL1EeSSlqpbHKLCqA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_tKu0nkL1EeSSlqpbHKLCqA" visible="false" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_tKu0n0L1EeSSlqpbHKLCqA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_tKu0oEL1EeSSlqpbHKLCqA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_tKu0oUL1EeSSlqpbHKLCqA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKu0okL1EeSSlqpbHKLCqA"/>
+ </children>
+ <element xmi:type="uml:Class" href="rsaToPapyrusParameters.uml#_tKu0kEL1EeSSlqpbHKLCqA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tKu0kkL1EeSSlqpbHKLCqA" x="79" y="55" width="373" height="129"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_MDv8IFOJEeSGbsrkEkSKIA" type="2010">
+ <children xmi:type="notation:DecorationNode" xmi:id="_MDv8IlOJEeSGbsrkEkSKIA" type="5035"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MDv8I1OJEeSGbsrkEkSKIA" type="7020">
+ <children xmi:type="notation:Shape" xmi:id="_MiP2AVOJEeSGbsrkEkSKIA" type="3018">
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_MiP2AFOJEeSGbsrkEkSKIA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_MiP2AlOJEeSGbsrkEkSKIA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_O-nKwFOJEeSGbsrkEkSKIA" type="3018">
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_O-dZwFOJEeSGbsrkEkSKIA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_O-nKwVOJEeSGbsrkEkSKIA"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MDv8JFOJEeSGbsrkEkSKIA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MDv8JVOJEeSGbsrkEkSKIA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MDv8JlOJEeSGbsrkEkSKIA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MDv8J1OJEeSGbsrkEkSKIA"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_MDv8KFOJEeSGbsrkEkSKIA" visible="false" type="7021">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_MDv8KVOJEeSGbsrkEkSKIA"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_MDv8KlOJEeSGbsrkEkSKIA"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_MDv8K1OJEeSGbsrkEkSKIA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MDv8LFOJEeSGbsrkEkSKIA"/>
+ </children>
+ <element xmi:type="uml:DataType" href="rsaToPapyrusParameters.uml#_MDmyMFOJEeSGbsrkEkSKIA"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MDv8IVOJEeSGbsrkEkSKIA" x="495" y="246" height="112"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_erBPcXZKEeSwiJkQAQl2Jg" type="2008">
+ <children xmi:type="notation:DecorationNode" xmi:id="_erBPc3ZKEeSwiJkQAQl2Jg" type="5029"/>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_erBPdHZKEeSwiJkQAQl2Jg" type="7017">
+ <children xmi:type="notation:Shape" xmi:id="_LgpPEVOJEeSGbsrkEkSKIA" type="3012">
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_LgpPEFOJEeSGbsrkEkSKIA"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_LgpPElOJEeSGbsrkEkSKIA"/>
+ </children>
+ <children xmi:type="notation:Shape" xmi:id="_pSQoEIQ5EeSC0ajaKNekyw" type="3012">
+ <element xmi:type="uml:Property" href="rsaToPapyrusParameters.uml#_pR2YYIQ5EeSC0ajaKNekyw"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_pSQoEYQ5EeSC0ajaKNekyw"/>
+ </children>
+ <styles xmi:type="notation:TitleStyle" xmi:id="_erBPdXZKEeSwiJkQAQl2Jg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_erBPdnZKEeSwiJkQAQl2Jg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_erBPd3ZKEeSwiJkQAQl2Jg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_erBPeHZKEeSwiJkQAQl2Jg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_erBPeXZKEeSwiJkQAQl2Jg" visible="false" type="7018">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_erBPenZKEeSwiJkQAQl2Jg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_erBPe3ZKEeSwiJkQAQl2Jg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_erBPfHZKEeSwiJkQAQl2Jg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_erBPfXZKEeSwiJkQAQl2Jg"/>
+ </children>
+ <children xmi:type="notation:BasicCompartment" xmi:id="_erBPfnZKEeSwiJkQAQl2Jg" visible="false" type="7019">
+ <styles xmi:type="notation:TitleStyle" xmi:id="_erBPf3ZKEeSwiJkQAQl2Jg"/>
+ <styles xmi:type="notation:SortingStyle" xmi:id="_erBPgHZKEeSwiJkQAQl2Jg"/>
+ <styles xmi:type="notation:FilteringStyle" xmi:id="_erBPgXZKEeSwiJkQAQl2Jg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_erBPgnZKEeSwiJkQAQl2Jg"/>
+ </children>
+ <element xmi:type="uml:Class" href="rsaToPapyrusParameters.uml#_erBPcHZKEeSwiJkQAQl2Jg"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_erBPcnZKEeSwiJkQAQl2Jg" x="79" y="248" width="373" height="112"/>
+ </children>
+ <styles xmi:type="notation:StringValueStyle" xmi:id="_ffjeAUL1EeSSlqpbHKLCqA" name="diagram_compatibility_version" stringValue="1.0.0"/>
+ <styles xmi:type="notation:DiagramStyle" xmi:id="_ffjeAkL1EeSSlqpbHKLCqA"/>
+ <styles xmi:type="style:PapyrusViewStyle" xmi:id="_ffjeA0L1EeSSlqpbHKLCqA">
+ <owner xmi:type="uml:Model" href="rsaToPapyrusParameters.uml#_fduSAEL1EeSSlqpbHKLCqA"/>
+ </styles>
+ <element xmi:type="uml:Model" href="rsaToPapyrusParameters.uml#_fduSAEL1EeSSlqpbHKLCqA"/>
+ <edges xmi:type="notation:Connector" xmi:id="_sluPwHZKEeSwiJkQAQl2Jg" type="4001" source="_tKu0kUL1EeSSlqpbHKLCqA" target="_erBPcXZKEeSwiJkQAQl2Jg" routing="Rectilinear">
+ <children xmi:type="notation:DecorationNode" xmi:id="_sluPw3ZKEeSwiJkQAQl2Jg" type="6001">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sluPxHZKEeSwiJkQAQl2Jg" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_sluPxXZKEeSwiJkQAQl2Jg" type="6002">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sluPxnZKEeSwiJkQAQl2Jg" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_sluPx3ZKEeSwiJkQAQl2Jg" visible="false" type="6003">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sluPyHZKEeSwiJkQAQl2Jg" y="-20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_sluPyXZKEeSwiJkQAQl2Jg" type="6005">
+ <styles xmi:type="notation:StringListValueStyle" xmi:id="_9TsB4HZKEeSwiJkQAQl2Jg" name="maskLabel">
+ <stringListValue>name</stringListValue>
+ <stringListValue>derived</stringListValue>
+ <stringListValue>multiplicity</stringListValue>
+ </styles>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sluPynZKEeSwiJkQAQl2Jg" x="-30" y="77"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_sluPy3ZKEeSwiJkQAQl2Jg" visible="false" type="6033">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sluPzHZKEeSwiJkQAQl2Jg" y="20"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_sluPzXZKEeSwiJkQAQl2Jg" visible="false" type="6034">
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_sluPznZKEeSwiJkQAQl2Jg" x="-28" y="-38"/>
+ </children>
+ <styles xmi:type="notation:FontStyle" xmi:id="_sluPwXZKEeSwiJkQAQl2Jg"/>
+ <element xmi:type="uml:Association" href="rsaToPapyrusParameters.uml#_slkew3ZKEeSwiJkQAQl2Jg"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sluPwnZKEeSwiJkQAQl2Jg" points="[-9, 1, -101, -81]$[-9, 82, -101, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_sl4AwHZKEeSwiJkQAQl2Jg" id="(0.47257383966244726,0.9642857142857143)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5rS-4HZKEeSwiJkQAQl2Jg" id="(0.4936708860759494,0.0)"/>
+ </edges>
+ </notation:Diagram>
+ <css:ModelStyleSheets xmi:id="_n2Dv0IQ5EeSC0ajaKNekyw"/>
+</xmi:XMI>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.uml b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.uml
new file mode 100644
index 0000000..cd80d87
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.uml
@@ -0,0 +1,107 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_fduSAEL1EeSSlqpbHKLCqA" name="RSAToPapyrusParameters">
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_fduSAUL1EeSSlqpbHKLCqA">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Class" xmi:id="_tKu0kEL1EeSSlqpbHKLCqA" name="Config">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_slkewHZKEeSwiJkQAQl2Jg" name="mappingParameters" type="_erBPcHZKEeSwiJkQAQl2Jg" aggregation="composite" association="_slkew3ZKEeSwiJkQAQl2Jg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_slkewXZKEeSwiJkQAQl2Jg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_slkewnZKEeSwiJkQAQl2Jg" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AYwUoFOJEeSGbsrkEkSKIA" name="maxThreads" visibility="public" isUnique="false">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_W1iDAGW5EeS5_vjAduszYQ" annotatedElement="_AYwUoFOJEeSGbsrkEkSKIA">
+ <body>The maximum number of threads to use during the migration.
+More threads will provide faster results, at the cost of memory consumption.</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_DhmU4FOJEeSGbsrkEkSKIA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_DhwF4FOJEeSGbsrkEkSKIA" value="1"/>
+ <defaultValue xmi:type="uml:LiteralInteger" xmi:id="_E7A-4FOJEeSGbsrkEkSKIA" value="2"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Wt4XkEL2EeSSlqpbHKLCqA" name="removeUnmappedDiagrams" visibility="public" isUnique="false">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_YchfIEMAEeSX267OQHSClQ" annotatedElement="_Wt4XkEL2EeSSlqpbHKLCqA">
+ <body>If true, the diagrams which were not migrated will be removed. Otherwise, only the successfully imported diagrams will be removed</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Yj3BwEL2EeSSlqpbHKLCqA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Yj3BwUL2EeSSlqpbHKLCqA" value="1"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_Zf9doEL2EeSSlqpbHKLCqA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_t42e0EL1EeSSlqpbHKLCqA" name="convertOpaqueExpressionToLiteralString" visibility="public" isUnique="false">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_sSSQAEL9EeSX267OQHSClQ" annotatedElement="_t42e0EL1EeSSlqpbHKLCqA">
+ <body>If true, the Opaque Expressions with a single body and no language (or a single empty language) will be converted to LiteralString</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_0H-TgEL1EeSSlqpbHKLCqA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_0IHdcEL1EeSSlqpbHKLCqA" value="1"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_3f1nMEL1EeSSlqpbHKLCqA" value="true"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_65pboEL1EeSSlqpbHKLCqA" name="removeUnmappedProfilesAndStereotypes" visibility="public" isUnique="false">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_zDs5cEL9EeSX267OQHSClQ" annotatedElement="_65pboEL1EeSSlqpbHKLCqA">
+ <body>If true, all unsupported RSA profiles and stereotypes will be deleted at the end of the transformation</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Gy7WwEL2EeSSlqpbHKLCqA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_Gy7WwUL2EeSSlqpbHKLCqA" value="1"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_H7rHgEL2EeSSlqpbHKLCqA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Mv8HwEL2EeSSlqpbHKLCqA" name="removeUnmappedAnnotations" visibility="public" isUnique="false">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_rogy4EMAEeSX267OQHSClQ" annotatedElement="_Mv8HwEL2EeSSlqpbHKLCqA">
+ <body>If true, the unmapped RSA EAnnotations will be deleted from the imported model</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_S39O4EL2EeSSlqpbHKLCqA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_S39O4UL2EeSSlqpbHKLCqA" value="1"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_UQehAEL2EeSSlqpbHKLCqA"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_JWjgUHcbEeSwiJkQAQl2Jg" name="alwaysAcceptSuggestedMappings" visibility="public">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_aOft0HcbEeSwiJkQAQl2Jg" annotatedElement="_JWjgUHcbEeSwiJkQAQl2Jg">
+ <body>If true, the Transformation will not open a dialog to ask user-confirmation for the dependency mappings. The tool will automatically keep going by "guessing" the proper mapping</body>
+ </ownedComment>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_P_5L0HcbEeSwiJkQAQl2Jg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_P_5L0XcbEeSwiJkQAQl2Jg" value="1"/>
+ <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_P_5L0ncbEeSwiJkQAQl2Jg"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:DataType" xmi:id="_MDmyMFOJEeSGbsrkEkSKIA" name="URIMapping">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_MiP2AFOJEeSGbsrkEkSKIA" name="sourceURI" visibility="public" isUnique="false">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OrbJAFOJEeSGbsrkEkSKIA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_OrbJAVOJEeSGbsrkEkSKIA" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_O-dZwFOJEeSGbsrkEkSKIA" name="targetURI" visibility="public" isUnique="false">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_RAos4FOJEeSGbsrkEkSKIA" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_RAos4VOJEeSGbsrkEkSKIA" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_erBPcHZKEeSwiJkQAQl2Jg" name="MappingParameters">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_LgpPEFOJEeSGbsrkEkSKIA" name="uriMappings" visibility="public" type="_MDmyMFOJEeSGbsrkEkSKIA" aggregation="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_iBwD0GW5EeS5_vjAduszYQ" annotatedElement="_LgpPEFOJEeSGbsrkEkSKIA">
+ <body>When models/libraries have been migrated separately, maps the libraries imported from RSA to their Papyrus equivalent</body>
+ </ownedComment>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_T5kB0FOJEeSGbsrkEkSKIA"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_T5kB0VOJEeSGbsrkEkSKIA" value="*"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_pR2YYIQ5EeSC0ajaKNekyw" name="profileUriMappings" visibility="public" type="_MDmyMFOJEeSGbsrkEkSKIA" aggregation="composite">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_49zT4IQ5EeSC0ajaKNekyw" annotatedElement="_pR2YYIQ5EeSC0ajaKNekyw">
+ <body>When profiles have been migrated separately, maps the profiles imported from RSA to their Papyrus equivalent</body>
+ </ownedComment>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_qweSgIQ5EeSC0ajaKNekyw"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_qwfgoIQ5EeSC0ajaKNekyw" value="*"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_slkew3ZKEeSwiJkQAQl2Jg" memberEnd="_slkexHZKEeSwiJkQAQl2Jg _slkewHZKEeSwiJkQAQl2Jg">
+ <ownedEnd xmi:type="uml:Property" xmi:id="_slkexHZKEeSwiJkQAQl2Jg" name="config" type="_tKu0kEL1EeSSlqpbHKLCqA" association="_slkew3ZKEeSwiJkQAQl2Jg">
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_slkexXZKEeSwiJkQAQl2Jg" value="1"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_slkexnZKEeSwiJkQAQl2Jg" value="1"/>
+ </ownedEnd>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_zg2CEEL1EeSSlqpbHKLCqA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zhSuAEL1EeSSlqpbHKLCqA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#_sYse0YZLEeKyw49uR6nx3g"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#ActionLanguage"/>
+ </profileApplication>
+</uml:Model>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/plugin.properties b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/plugin.properties
new file mode 100644
index 0000000..e317c6c
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/plugin.properties
@@ -0,0 +1,11 @@
+#
+
+pluginName = RSA to Papyrus Import tool
+providerName = Eclipse Modeling Project
+
+_UI_UML_rsa_content_type = UML2 UML File (imported from RSA)
+_UI_UML_2_0_0_rsa_content_type = UML2 2.0.0 UML File (imported from RSA)
+_UI_UML_2_1_0_rsa_content_type = UML2 2.1.0 UML File (imported from RSA)
+_UI_UML_3_0_0_rsa_content_type = UML2 3.0.0 UML File (imported from RSA)
+_UI_UML_4_0_0_rsa_content_type = UML2 4.0.0 UML File (imported from RSA)
+_UI_UML_5_0_0_rsa_content_type = UML2 5.0.0 UML File (imported from RSA)
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/plugin.xml b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/plugin.xml
new file mode 100644
index 0000000..5ac9951
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/plugin.xml
@@ -0,0 +1,462 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension-point id="extensions" name="extensions" schema="schema/extensions.exsd"/>
+ <extension
+ point="org.eclipse.ui.menus">
+ <menuContribution
+ allPopups="false"
+ locationURI="popup:org.eclipse.ui.navigator.ProjectExplorer#PopupMenu?after=additions">
+ <command
+ commandId="org.eclipse.papyrus.interoperability.rsa.import"
+ style="push">
+ <visibleWhen
+ checkEnabled="false">
+ <with
+ variable="selection">
+ <iterate
+ ifEmpty="false"
+ operator="or">
+ <adapt
+ type="org.eclipse.core.resources.IFile">
+ <or>
+ <test
+ property="org.eclipse.core.resources.extension"
+ value="emx">
+ </test>
+ <test
+ property="org.eclipse.core.resources.extension"
+ value="epx">
+ </test>
+ </or>
+ </adapt>
+ </iterate>
+ </with>
+ </visibleWhen>
+ </command>
+ </menuContribution>
+ </extension>
+ <extension
+ point="org.eclipse.ui.commands">
+ <command
+ defaultHandler="org.eclipse.papyrus.interoperability.rsa.handler.ImportHandler"
+ id="org.eclipse.papyrus.interoperability.rsa.import"
+ name="Import RSA Model/Profile">
+ </command>
+ </extension>
+
+ <extension
+ point="org.eclipse.emf.ecore.content_parser">
+ <parser
+ class="org.eclipse.uml2.uml.internal.resource.UML22UMLResourceFactoryImpl"
+ contentTypeIdentifier="org.eclipse.uml2.uml_2_0_0.rsa">
+ </parser>
+ <parser
+ class="org.eclipse.uml2.uml.internal.resource.UML212UMLResourceFactoryImpl"
+ contentTypeIdentifier="org.eclipse.uml2.uml_2_1_0.rsa">
+ </parser>
+ <parser
+ class="org.eclipse.uml2.uml.internal.resource.UML302UMLResourceFactoryImpl"
+ contentTypeIdentifier="org.eclipse.uml2.uml_3_0_0.rsa">
+ </parser>
+ <parser
+ class="org.eclipse.uml2.uml.internal.resource.UML402UMLResourceFactoryImpl"
+ contentTypeIdentifier="org.eclipse.uml2.uml_4_0_0.rsa">
+ </parser>
+ <parser
+ class="org.eclipse.uml2.uml.internal.resource.UMLResourceFactoryImpl"
+ contentTypeIdentifier="org.eclipse.uml2.uml_5_0_0.rsa">
+ </parser>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated PapyrusRSANotation -->
+ <package
+ uri="http://www.eclipse.org/papyrus/umlnotation"
+ class="org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage"
+ genModel="model/PapyrusUMLNotation.genmodel"/>
+ <package
+ class="org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage"
+ genModel="model/PapyrusUMLNotation.genmodel"
+ uri="http://www.ibm.com/xtools/1.5.3/Umlnotation">
+ </package>
+ </extension>
+
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated PapyrusDefault -->
+ <package
+ uri="http://www.eclipse.org/papyrus/profile/default"
+ class="org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage"
+ genModel="model/PapyrusDefault.genmodel"/>
+ <package
+ class="org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage"
+ genModel="model/PapyrusDefault.genmodel"
+ uri="http:///schemas/Default/1">
+ </package>
+ <package
+ class="org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage"
+ genModel="model/PapyrusDefault.genmodel"
+ uri="http:///schemas/Default/_fNm3AAqoEd6-N_NOT9vsCA/2">
+ </package>
+ </extension>
+
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated PapyrusProfileBase -->
+ <package
+ uri="http://www.eclipse.org/papyrus/profile/profilebase"
+ class="org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage"
+ genModel="model/PapyrusProfileBase.genmodel"/>
+ <package
+ class="org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage"
+ genModel="model/PapyrusProfileBase.genmodel"
+ uri="http:///schemas/ProfileBase/1">
+ </package>
+ </extension>
+
+ <extension
+ point="org.eclipse.m2m.qvt.oml.javaBlackboxUnits">
+ <unit
+ description="Java helpers to refactor UML types"
+ name="RTMappings"
+ namespace="org.eclipse.papyrus.interoperability.rsa">
+ <library
+ class="org.eclipse.papyrus.interoperability.rsa.blackbox.RTMappings">
+ <metamodel
+ nsURI="http://www.eclipse.org/uml2/5.0.0/UML">
+ </metamodel>
+ </library>
+ </unit>
+ <unit
+ description="Java helpers to manipulate ProfileBase"
+ name="ProfileBaseHelper"
+ namespace="org.eclipse.papyrus.interoperability.rsa">
+ <library
+ class="org.eclipse.papyrus.interoperability.rsa.blackbox.ProfileBaseHelper">
+ <metamodel
+ nsURI="http://www.eclipse.org/papyrus/profile/profilebase">
+ </metamodel>
+ </library>
+ </unit>
+ </extension>
+ <extension
+ point="org.eclipse.team.core.fileTypes">
+ <fileTypes
+ extension="emx"
+ type="text">
+ </fileTypes>
+ <fileTypes
+ extension="epx"
+ type="text">
+ </fileTypes>
+ <fileTypes
+ extension="efx"
+ type="text">
+ </fileTypes>
+ </extension>
+ <extension
+ point="org.eclipse.core.contenttype.contentTypes">
+ <!--content-type
+ base-type="org.eclipse.emf.ecore.xmi"
+ file-extensions="emx,efx,epx,uml"
+ id="org.eclipse.uml2.uml"
+ name="%_UI_UML_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.papyrus.interoperability.rsa.contenttype.ExtendedXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespacePattern"
+ value="http://www\.eclipse\.org/uml2/(2\.0\.0|2\.1\.0|3\.0\.0|4\.0\.0|5\.0\.0)/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml"
+ file-extensions="emx,efx,epx,uml"
+ id="org.eclipse.uml2.uml_2_0_0"
+ name="%_UI_UML_2_0_0_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.papyrus.interoperability.rsa.contenttype.ExtendedXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/2.0.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml"
+ file-extensions="emx,efx,epx,uml"
+ id="org.eclipse.uml2.uml_2_1_0"
+ name="%_UI_UML_2_1_0_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.papyrus.interoperability.rsa.contenttype.ExtendedXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/2.1.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml"
+ file-extensions="emx,efx,epx,uml"
+ id="org.eclipse.uml2.uml_3_0_0"
+ name="%_UI_UML_3_0_0_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.papyrus.interoperability.rsa.contenttype.ExtendedXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/3.0.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml"
+ file-extensions="emx,efx,epx,uml"
+ id="org.eclipse.uml2.uml_4_0_0"
+ name="%_UI_UML_4_0_0_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.papyrus.interoperability.rsa.contenttype.ExtendedXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/4.0.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml"
+ file-extensions="emx,efx,epx,uml"
+ id="org.eclipse.uml2.uml_5_0_0"
+ name="%_UI_UML_5_0_0_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.papyrus.interoperability.rsa.contenttype.ExtendedXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/5.0.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type-->
+ <file-association
+ content-type="org.eclipse.uml2.uml.rsa"
+ file-extensions="epx,emx,efx">
+ </file-association>
+ <file-association
+ content-type="org.eclipse.uml2.uml_2_1_0.rsa"
+ file-extensions="epx,emx,efx">
+ </file-association>
+ <file-association
+ content-type="org.eclipse.uml2.uml_3_0_0.rsa"
+ file-extensions="epx,emx,efx">
+ </file-association>
+ <file-association
+ content-type="org.eclipse.uml2.uml_4_0_0.rsa"
+ file-extensions="epx,emx,efx">
+ </file-association>
+ <file-association
+ content-type="org.eclipse.uml2.uml_5_0_0.rsa"
+ file-extensions="epx,emx,efx">
+ </file-association>
+ </extension>
+ <extension
+ point="org.eclipse.core.contenttype.contentTypes">
+ <content-type
+ base-type="org.eclipse.uml2.uml"
+ file-extensions="epx,emx,efx"
+ id="org.eclipse.uml2.uml.rsa"
+ name="%_UI_UML_rsa_content_type"
+ priority="normal">
+ <describer
+ class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespacePattern"
+ value="http://www\.eclipse\.org/uml2/(2\.0\.0|2\.1\.0|3\.0\.0|4\.0\.0|5\.0\.0)/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml_2_0_0"
+ file-extensions="epx,emx,efx"
+ id="org.eclipse.uml2.uml_2_0_0.rsa"
+ name="%_UI_UML_2_0_0_rsa_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/2.0.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml_2_1_0"
+ file-extensions="epx,emx,efx"
+ id="org.eclipse.uml2.uml_2_1_0.rsa"
+ name="%_UI_UML_2_1_0_rsa_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/2.1.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml_3_0_0"
+ file-extensions="epx,emx,efx"
+ id="org.eclipse.uml2.uml_3_0_0.rsa"
+ name="%_UI_UML_3_0_0_rsa_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/3.0.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml_4_0_0"
+ file-extensions="epx,emx,efx"
+ id="org.eclipse.uml2.uml_4_0_0.rsa"
+ name="%_UI_UML_4_0_0_rsa_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/4.0.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ <content-type
+ base-type="org.eclipse.uml2.uml_5_0_0"
+ file-extensions="epx,emx,efx"
+ id="org.eclipse.uml2.uml_5_0_0.rsa"
+ name="%_UI_UML_5_0_0_rsa_content_type"
+ priority="high">
+ <describer
+ class="org.eclipse.emf.ecore.xmi.impl.RootXMLContentHandlerImpl$Describer">
+ <parameter
+ name="namespace"
+ value="http://www.eclipse.org/uml2/5.0.0/UML">
+ </parameter>
+ <parameter
+ name="kind"
+ value="xmi">
+ </parameter>
+ </describer>
+ </content-type>
+ </extension>
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated rsaToPapyrusParameters -->
+ <package
+ uri="http:///RSAToPapyrusParameters.ecore"
+ class="org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage"
+ genModel="model/ui/rsaToPapyrusParameters.genmodel"/>
+ </extension>
+ <extension
+ point="org.eclipse.papyrus.infra.properties.contexts">
+ <context
+ contextModel="dialog/RSAToPapyrusParameters.ctx"
+ isCustomizable="false">
+ </context>
+ </extension>
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ location="platform:/plugin/org.eclipse.papyrus.interoperability.rsa/model/ui/rsaToPapyrusParameters.uml"
+ uri="http:///RSAToPapyrusParameters.ecore">
+ </profile>
+ </extension>
+
+ <extension
+ point="org.eclipse.ui.importWizards">
+ <wizard
+ category="org.eclipse.papyrus.infra.core.importcategory"
+ class="org.eclipse.papyrus.interoperability.rsa.wizard.TransformationWizard"
+ icon="icons/import_wiz_16x16.gif"
+ id="org.eclipse.papyrus.interoperability.rsa.transformationWizard"
+ name="RSA Models/Profiles">
+ <description>
+ Select and transform .emx and .epx files through the wizard window
+ </description>
+ </wizard>
+ </extension>
+ <extension
+ point="org.eclipse.uml2.uml.generated_package">
+ <profile
+ location="platform:/plugin/org.eclipse.papyrus.interoperability.rsa/model/profiles/RealTime.uml#_1FAMEKiFEeSPtOio57ufig"
+ uri="http://www.eclipse.org/papyrus/profile/umlrt">
+ </profile>
+ <profile
+ location="platform:/plugin/org.eclipse.papyrus.interoperability.rsa/model/profiles/Default.uml#_Nfp9EKiGEeSPtOio57ufig"
+ uri="http://www.eclipse.org/papyrus/profile/default">
+ </profile>
+ <profile
+ location="platform:/plugin/org.eclipse.papyrus.interoperability.rsa/model/profiles/ProfileBase.uml#_YFn2MKiGEeSPtOio57ufig"
+ uri="http://www.eclipse.org/papyrus/profile/profilebase">
+ </profile>
+ </extension>
+ <extension point="org.eclipse.emf.ecore.generated_package">
+ <!-- @generated DiagramHolder -->
+ <package
+ uri="http://www.eclipse.org/papyrus/migration/diagramholder"
+ class="org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolderPackage"
+ genModel="model/DiagramHolder.genmodel"/>
+ <package
+ class="org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolderPackage"
+ genModel="model/DiagramHolder.genmodel"
+ uri="http://www.ibm.com/xtools/7.1.0/resources">
+ </package>
+ </extension>
+
+</plugin>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/pom.xml b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/pom.xml
new file mode 100644
index 0000000..12e147f
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/pom.xml
@@ -0,0 +1,14 @@
+<?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.interoperability.rsa.plugins</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability</groupId>
+ <version>1.4.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability</groupId>
+ <version>1.4.0-SNAPSHOT</version>
+ <packaging>eclipse-plugin</packaging>
+</project>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/schema/extensions.exsd b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/schema/extensions.exsd
new file mode 100644
index 0000000..21f389b
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/schema/extensions.exsd
@@ -0,0 +1,102 @@
+<?xml version='1.0' encoding='UTF-8'?>
+<!-- Schema file written by PDE -->
+<schema targetNamespace="org.eclipse.papyrus.interoperability.rsa" xmlns="http://www.w3.org/2001/XMLSchema">
+<annotation>
+ <appinfo>
+ <meta.schema plugin="org.eclipse.papyrus.interoperability.rsa" id="extensions" name="extensions"/>
+ </appinfo>
+ <documentation>
+ Contribute a new extension to the RSA-to-Papyrus model transformation. This extension point uses internal/provisional API, due to the lack of precise use cases. Use at your own risk!
+ </documentation>
+ </annotation>
+
+ <element name="extension">
+ <annotation>
+ <appinfo>
+ <meta.element internal="true" />
+ </appinfo>
+ </annotation>
+ <complexType>
+ <sequence minOccurs="1" maxOccurs="unbounded">
+ <element ref="transformation"/>
+ </sequence>
+ <attribute name="point" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="id" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ </annotation>
+ </attribute>
+ <attribute name="name" type="string">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute translatable="true"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <element name="transformation">
+ <complexType>
+ <attribute name="className" type="string" use="required">
+ <annotation>
+ <documentation>
+
+ </documentation>
+ <appinfo>
+ <meta.attribute kind="java" basedOn=":org.eclipse.papyrus.interoperability.rsa.extension.TransformationExtension"/>
+ </appinfo>
+ </annotation>
+ </attribute>
+ </complexType>
+ </element>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="since"/>
+ </appinfo>
+ <documentation>
+ [Enter the first release in which this extension point appears.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="examples"/>
+ </appinfo>
+ <documentation>
+ [Enter extension point usage example here.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="apiinfo"/>
+ </appinfo>
+ <documentation>
+ [Enter API information here.]
+ </documentation>
+ </annotation>
+
+ <annotation>
+ <appinfo>
+ <meta.section type="implementation"/>
+ </appinfo>
+ <documentation>
+ [Enter information about supplied implementation of this extension point.]
+ </documentation>
+ </annotation>
+
+
+</schema>
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/Config.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/Config.java
new file mode 100644
index 0000000..3163338
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/Config.java
@@ -0,0 +1,242 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Config</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#getMappingParameters <em>Mapping Parameters</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#getMaxThreads <em>Max Threads</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedDiagrams <em>Remove Unmapped Diagrams</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isConvertOpaqueExpressionToLiteralString <em>Convert Opaque Expression To Literal String</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedProfilesAndStereotypes <em>Remove Unmapped Profiles And Stereotypes</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedAnnotations <em>Remove Unmapped Annotations</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isAlwaysAcceptSuggestedMappings <em>Always Accept Suggested Mappings</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getConfig()
+ * @model
+ * @generated
+ */
+public interface Config extends EObject {
+ /**
+ * Returns the value of the '<em><b>Mapping Parameters</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Mapping Parameters</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>Mapping Parameters</em>' containment reference.
+ * @see #setMappingParameters(MappingParameters)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getConfig_MappingParameters()
+ * @model containment="true" required="true" ordered="false"
+ * @generated
+ */
+ MappingParameters getMappingParameters();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#getMappingParameters <em>Mapping Parameters</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Mapping Parameters</em>' containment reference.
+ * @see #getMappingParameters()
+ * @generated
+ */
+ void setMappingParameters(MappingParameters value);
+
+ /**
+ * Returns the value of the '<em><b>Max Threads</b></em>' attribute.
+ * The default value is <code>"2"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * The maximum number of threads to use during the migration.
+ * More threads will provide faster results, at the cost of memory consumption.
+ * <!-- end-model-doc -->
+ *
+ * @return the value of the '<em>Max Threads</em>' attribute.
+ * @see #setMaxThreads(int)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getConfig_MaxThreads()
+ * @model default="2" unique="false" dataType="org.eclipse.uml2.types.Integer" required="true" ordered="false"
+ * @generated
+ */
+ int getMaxThreads();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#getMaxThreads <em>Max Threads</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Max Threads</em>' attribute.
+ * @see #getMaxThreads()
+ * @generated
+ */
+ void setMaxThreads(int value);
+
+ /**
+ * Returns the value of the '<em><b>Remove Unmapped Diagrams</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * If true, the diagrams which were not migrated will be removed. Otherwise, only the successfully imported diagrams will be removed
+ * <!-- end-model-doc -->
+ *
+ * @return the value of the '<em>Remove Unmapped Diagrams</em>' attribute.
+ * @see #setRemoveUnmappedDiagrams(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getConfig_RemoveUnmappedDiagrams()
+ * @model default="false" unique="false" dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false"
+ * @generated
+ */
+ boolean isRemoveUnmappedDiagrams();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedDiagrams <em>Remove Unmapped Diagrams</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Remove Unmapped Diagrams</em>' attribute.
+ * @see #isRemoveUnmappedDiagrams()
+ * @generated
+ */
+ void setRemoveUnmappedDiagrams(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Convert Opaque Expression To Literal String</b></em>' attribute.
+ * The default value is <code>"true"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * If true, the Opaque Expressions with a single body and no language (or a single empty language) will be converted to LiteralString
+ * <!-- end-model-doc -->
+ *
+ * @return the value of the '<em>Convert Opaque Expression To Literal String</em>' attribute.
+ * @see #setConvertOpaqueExpressionToLiteralString(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getConfig_ConvertOpaqueExpressionToLiteralString()
+ * @model default="true" unique="false" dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false"
+ * @generated
+ */
+ boolean isConvertOpaqueExpressionToLiteralString();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isConvertOpaqueExpressionToLiteralString <em>Convert Opaque Expression To Literal String</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Convert Opaque Expression To Literal String</em>' attribute.
+ * @see #isConvertOpaqueExpressionToLiteralString()
+ * @generated
+ */
+ void setConvertOpaqueExpressionToLiteralString(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Remove Unmapped Profiles And Stereotypes</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * If true, all unsupported RSA profiles and stereotypes will be deleted at the end of the transformation
+ * <!-- end-model-doc -->
+ *
+ * @return the value of the '<em>Remove Unmapped Profiles And Stereotypes</em>' attribute.
+ * @see #setRemoveUnmappedProfilesAndStereotypes(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getConfig_RemoveUnmappedProfilesAndStereotypes()
+ * @model default="false" unique="false" dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false"
+ * @generated
+ */
+ boolean isRemoveUnmappedProfilesAndStereotypes();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedProfilesAndStereotypes <em>Remove Unmapped Profiles And Stereotypes</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Remove Unmapped Profiles And Stereotypes</em>' attribute.
+ * @see #isRemoveUnmappedProfilesAndStereotypes()
+ * @generated
+ */
+ void setRemoveUnmappedProfilesAndStereotypes(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Remove Unmapped Annotations</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * If true, the unmapped RSA EAnnotations will be deleted from the imported model
+ * <!-- end-model-doc -->
+ *
+ * @return the value of the '<em>Remove Unmapped Annotations</em>' attribute.
+ * @see #setRemoveUnmappedAnnotations(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getConfig_RemoveUnmappedAnnotations()
+ * @model default="false" unique="false" dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false"
+ * @generated
+ */
+ boolean isRemoveUnmappedAnnotations();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedAnnotations <em>Remove Unmapped Annotations</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Remove Unmapped Annotations</em>' attribute.
+ * @see #isRemoveUnmappedAnnotations()
+ * @generated
+ */
+ void setRemoveUnmappedAnnotations(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Always Accept Suggested Mappings</b></em>' attribute.
+ * The default value is <code>"false"</code>.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * If true, the Transformation will not open a dialog to ask user-confirmation for the dependency mappings. The tool will automatically keep going by "guessing" the proper mapping
+ * <!-- end-model-doc -->
+ *
+ * @return the value of the '<em>Always Accept Suggested Mappings</em>' attribute.
+ * @see #setAlwaysAcceptSuggestedMappings(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getConfig_AlwaysAcceptSuggestedMappings()
+ * @model default="false" dataType="org.eclipse.uml2.types.Boolean" required="true" ordered="false"
+ * @generated
+ */
+ boolean isAlwaysAcceptSuggestedMappings();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isAlwaysAcceptSuggestedMappings <em>Always Accept Suggested Mappings</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Always Accept Suggested Mappings</em>' attribute.
+ * @see #isAlwaysAcceptSuggestedMappings()
+ * @generated
+ */
+ void setAlwaysAcceptSuggestedMappings(boolean value);
+
+} // Config
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/MappingParameters.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/MappingParameters.java
new file mode 100644
index 0000000..f604832
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/MappingParameters.java
@@ -0,0 +1,71 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Mapping Parameters</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters#getUriMappings <em>Uri Mappings</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters#getProfileUriMappings <em>Profile Uri Mappings</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getMappingParameters()
+ * @model
+ * @generated
+ */
+public interface MappingParameters extends EObject {
+ /**
+ * Returns the value of the '<em><b>Uri Mappings</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * When models/libraries have been migrated separately, maps the libraries imported from RSA to their Papyrus equivalent
+ * <!-- end-model-doc -->
+ *
+ * @return the value of the '<em>Uri Mappings</em>' containment reference list.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getMappingParameters_UriMappings()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList<URIMapping> getUriMappings();
+
+ /**
+ * Returns the value of the '<em><b>Profile Uri Mappings</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Profile Uri Mappings</em>' containment reference list isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * When profiles have been migrated separately, maps the profiles imported from RSA to their Papyrus equivalent
+ * <!-- end-model-doc -->
+ *
+ * @return the value of the '<em>Profile Uri Mappings</em>' containment reference list.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getMappingParameters_ProfileUriMappings()
+ * @model containment="true" ordered="false"
+ * @generated
+ */
+ EList<URIMapping> getProfileUriMappings();
+
+} // MappingParameters
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/RSAToPapyrusParametersFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/RSAToPapyrusParametersFactory.java
new file mode 100644
index 0000000..8500dca
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/RSAToPapyrusParametersFactory.java
@@ -0,0 +1,75 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters;
+
+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.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage
+ * @generated
+ */
+public interface RSAToPapyrusParametersFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ RSAToPapyrusParametersFactory eINSTANCE = org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.RSAToPapyrusParametersFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Config</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Config</em>'.
+ * @generated
+ */
+ Config createConfig();
+
+ /**
+ * Returns a new object of class '<em>Mapping Parameters</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Mapping Parameters</em>'.
+ * @generated
+ */
+ MappingParameters createMappingParameters();
+
+ /**
+ * Returns a new object of class '<em>URI Mapping</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>URI Mapping</em>'.
+ * @generated
+ */
+ URIMapping createURIMapping();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ RSAToPapyrusParametersPackage getRSAToPapyrusParametersPackage();
+
+} // RSAToPapyrusParametersFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/RSAToPapyrusParametersPackage.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/RSAToPapyrusParametersPackage.java
new file mode 100644
index 0000000..51095be
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/RSAToPapyrusParametersPackage.java
@@ -0,0 +1,602 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters;
+
+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 org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface RSAToPapyrusParametersPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNAME = "RSAToPapyrusParameters";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_URI = "http:///RSAToPapyrusParameters.ecore";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "RSAToPapyrusParameters";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ RSAToPapyrusParametersPackage eINSTANCE = org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.RSAToPapyrusParametersPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl <em>Config</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.RSAToPapyrusParametersPackageImpl#getConfig()
+ * @generated
+ */
+ int CONFIG = 0;
+
+ /**
+ * The feature id for the '<em><b>Mapping Parameters</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG__MAPPING_PARAMETERS = 0;
+
+ /**
+ * The feature id for the '<em><b>Max Threads</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG__MAX_THREADS = 1;
+
+ /**
+ * The feature id for the '<em><b>Remove Unmapped Diagrams</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG__REMOVE_UNMAPPED_DIAGRAMS = 2;
+
+ /**
+ * The feature id for the '<em><b>Convert Opaque Expression To Literal String</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG__CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING = 3;
+
+ /**
+ * The feature id for the '<em><b>Remove Unmapped Profiles And Stereotypes</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG__REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES = 4;
+
+ /**
+ * The feature id for the '<em><b>Remove Unmapped Annotations</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG__REMOVE_UNMAPPED_ANNOTATIONS = 5;
+
+ /**
+ * The feature id for the '<em><b>Always Accept Suggested Mappings</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG__ALWAYS_ACCEPT_SUGGESTED_MAPPINGS = 6;
+
+ /**
+ * The number of structural features of the '<em>Config</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG_FEATURE_COUNT = 7;
+
+ /**
+ * The number of operations of the '<em>Config</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int CONFIG_OPERATION_COUNT = 0;
+
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.MappingParametersImpl <em>Mapping Parameters</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.MappingParametersImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.RSAToPapyrusParametersPackageImpl#getMappingParameters()
+ * @generated
+ */
+ int MAPPING_PARAMETERS = 1;
+
+ /**
+ * The feature id for the '<em><b>Uri Mappings</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MAPPING_PARAMETERS__URI_MAPPINGS = 0;
+
+ /**
+ * The feature id for the '<em><b>Profile Uri Mappings</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS = 1;
+
+ /**
+ * The number of structural features of the '<em>Mapping Parameters</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MAPPING_PARAMETERS_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Mapping Parameters</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MAPPING_PARAMETERS_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.URIMappingImpl <em>URI Mapping</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.URIMappingImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.RSAToPapyrusParametersPackageImpl#getURIMapping()
+ * @generated
+ */
+ int URI_MAPPING = 2;
+
+ /**
+ * The feature id for the '<em><b>Source URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URI_MAPPING__SOURCE_URI = 0;
+
+ /**
+ * The feature id for the '<em><b>Target URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URI_MAPPING__TARGET_URI = 1;
+
+ /**
+ * The number of structural features of the '<em>URI Mapping</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URI_MAPPING_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>URI Mapping</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URI_MAPPING_OPERATION_COUNT = 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config <em>Config</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Config</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config
+ * @generated
+ */
+ EClass getConfig();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#getMappingParameters <em>Mapping Parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference '<em>Mapping Parameters</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#getMappingParameters()
+ * @see #getConfig()
+ * @generated
+ */
+ EReference getConfig_MappingParameters();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#getMaxThreads <em>Max Threads</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Max Threads</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#getMaxThreads()
+ * @see #getConfig()
+ * @generated
+ */
+ EAttribute getConfig_MaxThreads();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedDiagrams <em>Remove Unmapped Diagrams</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Remove Unmapped Diagrams</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedDiagrams()
+ * @see #getConfig()
+ * @generated
+ */
+ EAttribute getConfig_RemoveUnmappedDiagrams();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isConvertOpaqueExpressionToLiteralString <em>Convert Opaque Expression To Literal String</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Convert Opaque Expression To Literal String</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isConvertOpaqueExpressionToLiteralString()
+ * @see #getConfig()
+ * @generated
+ */
+ EAttribute getConfig_ConvertOpaqueExpressionToLiteralString();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedProfilesAndStereotypes <em>Remove Unmapped Profiles And Stereotypes</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Remove Unmapped Profiles And Stereotypes</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedProfilesAndStereotypes()
+ * @see #getConfig()
+ * @generated
+ */
+ EAttribute getConfig_RemoveUnmappedProfilesAndStereotypes();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedAnnotations <em>Remove Unmapped Annotations</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Remove Unmapped Annotations</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isRemoveUnmappedAnnotations()
+ * @see #getConfig()
+ * @generated
+ */
+ EAttribute getConfig_RemoveUnmappedAnnotations();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isAlwaysAcceptSuggestedMappings <em>Always Accept Suggested Mappings</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Always Accept Suggested Mappings</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config#isAlwaysAcceptSuggestedMappings()
+ * @see #getConfig()
+ * @generated
+ */
+ EAttribute getConfig_AlwaysAcceptSuggestedMappings();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters <em>Mapping Parameters</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Mapping Parameters</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters
+ * @generated
+ */
+ EClass getMappingParameters();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters#getUriMappings <em>Uri Mappings</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Uri Mappings</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters#getUriMappings()
+ * @see #getMappingParameters()
+ * @generated
+ */
+ EReference getMappingParameters_UriMappings();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters#getProfileUriMappings <em>Profile Uri Mappings</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Profile Uri Mappings</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters#getProfileUriMappings()
+ * @see #getMappingParameters()
+ * @generated
+ */
+ EReference getMappingParameters_ProfileUriMappings();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping <em>URI Mapping</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>URI Mapping</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping
+ * @generated
+ */
+ EClass getURIMapping();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping#getSourceURI <em>Source URI</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Source URI</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping#getSourceURI()
+ * @see #getURIMapping()
+ * @generated
+ */
+ EAttribute getURIMapping_SourceURI();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping#getTargetURI <em>Target URI</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Target URI</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping#getTargetURI()
+ * @see #getURIMapping()
+ * @generated
+ */
+ EAttribute getURIMapping_TargetURI();
+
+ /**
+ * 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
+ */
+ RSAToPapyrusParametersFactory getRSAToPapyrusParametersFactory();
+
+ /**
+ * <!-- 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.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl <em>Config</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.RSAToPapyrusParametersPackageImpl#getConfig()
+ * @generated
+ */
+ EClass CONFIG = eINSTANCE.getConfig();
+
+ /**
+ * The meta object literal for the '<em><b>Mapping Parameters</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference CONFIG__MAPPING_PARAMETERS = eINSTANCE.getConfig_MappingParameters();
+
+ /**
+ * The meta object literal for the '<em><b>Max Threads</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONFIG__MAX_THREADS = eINSTANCE.getConfig_MaxThreads();
+
+ /**
+ * The meta object literal for the '<em><b>Remove Unmapped Diagrams</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONFIG__REMOVE_UNMAPPED_DIAGRAMS = eINSTANCE.getConfig_RemoveUnmappedDiagrams();
+
+ /**
+ * The meta object literal for the '<em><b>Convert Opaque Expression To Literal String</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONFIG__CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING = eINSTANCE.getConfig_ConvertOpaqueExpressionToLiteralString();
+
+ /**
+ * The meta object literal for the '<em><b>Remove Unmapped Profiles And Stereotypes</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONFIG__REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES = eINSTANCE.getConfig_RemoveUnmappedProfilesAndStereotypes();
+
+ /**
+ * The meta object literal for the '<em><b>Remove Unmapped Annotations</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONFIG__REMOVE_UNMAPPED_ANNOTATIONS = eINSTANCE.getConfig_RemoveUnmappedAnnotations();
+
+ /**
+ * The meta object literal for the '<em><b>Always Accept Suggested Mappings</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute CONFIG__ALWAYS_ACCEPT_SUGGESTED_MAPPINGS = eINSTANCE.getConfig_AlwaysAcceptSuggestedMappings();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.MappingParametersImpl <em>Mapping Parameters</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.MappingParametersImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.RSAToPapyrusParametersPackageImpl#getMappingParameters()
+ * @generated
+ */
+ EClass MAPPING_PARAMETERS = eINSTANCE.getMappingParameters();
+
+ /**
+ * The meta object literal for the '<em><b>Uri Mappings</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference MAPPING_PARAMETERS__URI_MAPPINGS = eINSTANCE.getMappingParameters_UriMappings();
+
+ /**
+ * The meta object literal for the '<em><b>Profile Uri Mappings</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS = eINSTANCE.getMappingParameters_ProfileUriMappings();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.URIMappingImpl <em>URI Mapping</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.URIMappingImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.RSAToPapyrusParametersPackageImpl#getURIMapping()
+ * @generated
+ */
+ EClass URI_MAPPING = eINSTANCE.getURIMapping();
+
+ /**
+ * The meta object literal for the '<em><b>Source URI</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute URI_MAPPING__SOURCE_URI = eINSTANCE.getURIMapping_SourceURI();
+
+ /**
+ * The meta object literal for the '<em><b>Target URI</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute URI_MAPPING__TARGET_URI = eINSTANCE.getURIMapping_TargetURI();
+
+ }
+
+} // RSAToPapyrusParametersPackage
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/URIMapping.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/URIMapping.java
new file mode 100644
index 0000000..f65fc60
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/URIMapping.java
@@ -0,0 +1,90 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>URI Mapping</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping#getSourceURI <em>Source URI</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping#getTargetURI <em>Target URI</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getURIMapping()
+ * @model
+ * @generated
+ */
+public interface URIMapping extends EObject {
+ /**
+ * Returns the value of the '<em><b>Source URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Source URI</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Source URI</em>' attribute.
+ * @see #setSourceURI(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getURIMapping_SourceURI()
+ * @model unique="false" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getSourceURI();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping#getSourceURI <em>Source URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Source URI</em>' attribute.
+ * @see #getSourceURI()
+ * @generated
+ */
+ void setSourceURI(String value);
+
+ /**
+ * Returns the value of the '<em><b>Target URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Target URI</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Target URI</em>' attribute.
+ * @see #setTargetURI(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#getURIMapping_TargetURI()
+ * @model unique="false" dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+ * @generated
+ */
+ String getTargetURI();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping#getTargetURI <em>Target URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Target URI</em>' attribute.
+ * @see #getTargetURI()
+ * @generated
+ */
+ void setTargetURI(String value);
+
+} // URIMapping
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/ConfigImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/ConfigImpl.java
new file mode 100644
index 0000000..6dbcd68
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/ConfigImpl.java
@@ -0,0 +1,587 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.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.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Config</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl#getMappingParameters <em>Mapping Parameters</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl#getMaxThreads <em>Max Threads</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl#isRemoveUnmappedDiagrams <em>Remove Unmapped Diagrams</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl#isConvertOpaqueExpressionToLiteralString <em>Convert Opaque Expression To Literal String</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl#isRemoveUnmappedProfilesAndStereotypes <em>Remove Unmapped Profiles And Stereotypes</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl#isRemoveUnmappedAnnotations <em>Remove Unmapped Annotations</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.ConfigImpl#isAlwaysAcceptSuggestedMappings <em>Always Accept Suggested Mappings</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ConfigImpl extends MinimalEObjectImpl.Container implements Config {
+ /**
+ * The cached value of the '{@link #getMappingParameters() <em>Mapping Parameters</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMappingParameters()
+ * @generated
+ * @ordered
+ */
+ protected MappingParameters mappingParameters;
+
+ /**
+ * The default value of the '{@link #getMaxThreads() <em>Max Threads</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMaxThreads()
+ * @generated
+ * @ordered
+ */
+ protected static final int MAX_THREADS_EDEFAULT = 2;
+
+ /**
+ * The cached value of the '{@link #getMaxThreads() <em>Max Threads</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMaxThreads()
+ * @generated
+ * @ordered
+ */
+ protected int maxThreads = MAX_THREADS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isRemoveUnmappedDiagrams() <em>Remove Unmapped Diagrams</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isRemoveUnmappedDiagrams()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean REMOVE_UNMAPPED_DIAGRAMS_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isRemoveUnmappedDiagrams() <em>Remove Unmapped Diagrams</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isRemoveUnmappedDiagrams()
+ * @generated
+ * @ordered
+ */
+ protected boolean removeUnmappedDiagrams = REMOVE_UNMAPPED_DIAGRAMS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isConvertOpaqueExpressionToLiteralString() <em>Convert Opaque Expression To Literal String</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isConvertOpaqueExpressionToLiteralString()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isConvertOpaqueExpressionToLiteralString() <em>Convert Opaque Expression To Literal String</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isConvertOpaqueExpressionToLiteralString()
+ * @generated
+ * @ordered
+ */
+ protected boolean convertOpaqueExpressionToLiteralString = CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isRemoveUnmappedProfilesAndStereotypes() <em>Remove Unmapped Profiles And Stereotypes</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isRemoveUnmappedProfilesAndStereotypes()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isRemoveUnmappedProfilesAndStereotypes() <em>Remove Unmapped Profiles And Stereotypes</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isRemoveUnmappedProfilesAndStereotypes()
+ * @generated
+ * @ordered
+ */
+ protected boolean removeUnmappedProfilesAndStereotypes = REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isRemoveUnmappedAnnotations() <em>Remove Unmapped Annotations</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isRemoveUnmappedAnnotations()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean REMOVE_UNMAPPED_ANNOTATIONS_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isRemoveUnmappedAnnotations() <em>Remove Unmapped Annotations</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isRemoveUnmappedAnnotations()
+ * @generated
+ * @ordered
+ */
+ protected boolean removeUnmappedAnnotations = REMOVE_UNMAPPED_ANNOTATIONS_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isAlwaysAcceptSuggestedMappings() <em>Always Accept Suggested Mappings</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isAlwaysAcceptSuggestedMappings()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean ALWAYS_ACCEPT_SUGGESTED_MAPPINGS_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isAlwaysAcceptSuggestedMappings() <em>Always Accept Suggested Mappings</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isAlwaysAcceptSuggestedMappings()
+ * @generated
+ * @ordered
+ */
+ protected boolean alwaysAcceptSuggestedMappings = ALWAYS_ACCEPT_SUGGESTED_MAPPINGS_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ConfigImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RSAToPapyrusParametersPackage.Literals.CONFIG;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public MappingParameters getMappingParameters() {
+ return mappingParameters;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public NotificationChain basicSetMappingParameters(MappingParameters newMappingParameters, NotificationChain msgs) {
+ MappingParameters oldMappingParameters = mappingParameters;
+ mappingParameters = newMappingParameters;
+ if (eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS, oldMappingParameters, newMappingParameters);
+ if (msgs == null) {
+ msgs = notification;
+ } else {
+ msgs.add(notification);
+ }
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setMappingParameters(MappingParameters newMappingParameters) {
+ if (newMappingParameters != mappingParameters) {
+ NotificationChain msgs = null;
+ if (mappingParameters != null) {
+ msgs = ((InternalEObject) mappingParameters).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS, null, msgs);
+ }
+ if (newMappingParameters != null) {
+ msgs = ((InternalEObject) newMappingParameters).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS, null, msgs);
+ }
+ msgs = basicSetMappingParameters(newMappingParameters, msgs);
+ if (msgs != null) {
+ msgs.dispatch();
+ }
+ } else if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS, newMappingParameters, newMappingParameters));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int getMaxThreads() {
+ return maxThreads;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setMaxThreads(int newMaxThreads) {
+ int oldMaxThreads = maxThreads;
+ maxThreads = newMaxThreads;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.CONFIG__MAX_THREADS, oldMaxThreads, maxThreads));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isRemoveUnmappedDiagrams() {
+ return removeUnmappedDiagrams;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setRemoveUnmappedDiagrams(boolean newRemoveUnmappedDiagrams) {
+ boolean oldRemoveUnmappedDiagrams = removeUnmappedDiagrams;
+ removeUnmappedDiagrams = newRemoveUnmappedDiagrams;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_DIAGRAMS, oldRemoveUnmappedDiagrams, removeUnmappedDiagrams));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isConvertOpaqueExpressionToLiteralString() {
+ return convertOpaqueExpressionToLiteralString;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setConvertOpaqueExpressionToLiteralString(boolean newConvertOpaqueExpressionToLiteralString) {
+ boolean oldConvertOpaqueExpressionToLiteralString = convertOpaqueExpressionToLiteralString;
+ convertOpaqueExpressionToLiteralString = newConvertOpaqueExpressionToLiteralString;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.CONFIG__CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING, oldConvertOpaqueExpressionToLiteralString, convertOpaqueExpressionToLiteralString));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isRemoveUnmappedProfilesAndStereotypes() {
+ return removeUnmappedProfilesAndStereotypes;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setRemoveUnmappedProfilesAndStereotypes(boolean newRemoveUnmappedProfilesAndStereotypes) {
+ boolean oldRemoveUnmappedProfilesAndStereotypes = removeUnmappedProfilesAndStereotypes;
+ removeUnmappedProfilesAndStereotypes = newRemoveUnmappedProfilesAndStereotypes;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES, oldRemoveUnmappedProfilesAndStereotypes, removeUnmappedProfilesAndStereotypes));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isRemoveUnmappedAnnotations() {
+ return removeUnmappedAnnotations;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setRemoveUnmappedAnnotations(boolean newRemoveUnmappedAnnotations) {
+ boolean oldRemoveUnmappedAnnotations = removeUnmappedAnnotations;
+ removeUnmappedAnnotations = newRemoveUnmappedAnnotations;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_ANNOTATIONS, oldRemoveUnmappedAnnotations, removeUnmappedAnnotations));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isAlwaysAcceptSuggestedMappings() {
+ return alwaysAcceptSuggestedMappings;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setAlwaysAcceptSuggestedMappings(boolean newAlwaysAcceptSuggestedMappings) {
+ boolean oldAlwaysAcceptSuggestedMappings = alwaysAcceptSuggestedMappings;
+ alwaysAcceptSuggestedMappings = newAlwaysAcceptSuggestedMappings;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.CONFIG__ALWAYS_ACCEPT_SUGGESTED_MAPPINGS, oldAlwaysAcceptSuggestedMappings, alwaysAcceptSuggestedMappings));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS:
+ return basicSetMappingParameters(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 RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS:
+ return getMappingParameters();
+ case RSAToPapyrusParametersPackage.CONFIG__MAX_THREADS:
+ return getMaxThreads();
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_DIAGRAMS:
+ return isRemoveUnmappedDiagrams();
+ case RSAToPapyrusParametersPackage.CONFIG__CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING:
+ return isConvertOpaqueExpressionToLiteralString();
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES:
+ return isRemoveUnmappedProfilesAndStereotypes();
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_ANNOTATIONS:
+ return isRemoveUnmappedAnnotations();
+ case RSAToPapyrusParametersPackage.CONFIG__ALWAYS_ACCEPT_SUGGESTED_MAPPINGS:
+ return isAlwaysAcceptSuggestedMappings();
+ }
+ 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 RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS:
+ setMappingParameters((MappingParameters) newValue);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__MAX_THREADS:
+ setMaxThreads((Integer) newValue);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_DIAGRAMS:
+ setRemoveUnmappedDiagrams((Boolean) newValue);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING:
+ setConvertOpaqueExpressionToLiteralString((Boolean) newValue);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES:
+ setRemoveUnmappedProfilesAndStereotypes((Boolean) newValue);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_ANNOTATIONS:
+ setRemoveUnmappedAnnotations((Boolean) newValue);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__ALWAYS_ACCEPT_SUGGESTED_MAPPINGS:
+ setAlwaysAcceptSuggestedMappings((Boolean) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS:
+ setMappingParameters((MappingParameters) null);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__MAX_THREADS:
+ setMaxThreads(MAX_THREADS_EDEFAULT);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_DIAGRAMS:
+ setRemoveUnmappedDiagrams(REMOVE_UNMAPPED_DIAGRAMS_EDEFAULT);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING:
+ setConvertOpaqueExpressionToLiteralString(CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING_EDEFAULT);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES:
+ setRemoveUnmappedProfilesAndStereotypes(REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES_EDEFAULT);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_ANNOTATIONS:
+ setRemoveUnmappedAnnotations(REMOVE_UNMAPPED_ANNOTATIONS_EDEFAULT);
+ return;
+ case RSAToPapyrusParametersPackage.CONFIG__ALWAYS_ACCEPT_SUGGESTED_MAPPINGS:
+ setAlwaysAcceptSuggestedMappings(ALWAYS_ACCEPT_SUGGESTED_MAPPINGS_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.CONFIG__MAPPING_PARAMETERS:
+ return mappingParameters != null;
+ case RSAToPapyrusParametersPackage.CONFIG__MAX_THREADS:
+ return maxThreads != MAX_THREADS_EDEFAULT;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_DIAGRAMS:
+ return removeUnmappedDiagrams != REMOVE_UNMAPPED_DIAGRAMS_EDEFAULT;
+ case RSAToPapyrusParametersPackage.CONFIG__CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING:
+ return convertOpaqueExpressionToLiteralString != CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING_EDEFAULT;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES:
+ return removeUnmappedProfilesAndStereotypes != REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES_EDEFAULT;
+ case RSAToPapyrusParametersPackage.CONFIG__REMOVE_UNMAPPED_ANNOTATIONS:
+ return removeUnmappedAnnotations != REMOVE_UNMAPPED_ANNOTATIONS_EDEFAULT;
+ case RSAToPapyrusParametersPackage.CONFIG__ALWAYS_ACCEPT_SUGGESTED_MAPPINGS:
+ return alwaysAcceptSuggestedMappings != ALWAYS_ACCEPT_SUGGESTED_MAPPINGS_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (maxThreads: ");
+ result.append(maxThreads);
+ result.append(", removeUnmappedDiagrams: ");
+ result.append(removeUnmappedDiagrams);
+ result.append(", convertOpaqueExpressionToLiteralString: ");
+ result.append(convertOpaqueExpressionToLiteralString);
+ result.append(", removeUnmappedProfilesAndStereotypes: ");
+ result.append(removeUnmappedProfilesAndStereotypes);
+ result.append(", removeUnmappedAnnotations: ");
+ result.append(removeUnmappedAnnotations);
+ result.append(", alwaysAcceptSuggestedMappings: ");
+ result.append(alwaysAcceptSuggestedMappings);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ConfigImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/MappingParametersImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/MappingParametersImpl.java
new file mode 100644
index 0000000..357fdd2
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/MappingParametersImpl.java
@@ -0,0 +1,209 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl;
+
+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;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Mapping Parameters</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.MappingParametersImpl#getUriMappings <em>Uri Mappings</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.MappingParametersImpl#getProfileUriMappings <em>Profile Uri Mappings</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class MappingParametersImpl extends MinimalEObjectImpl.Container implements MappingParameters {
+ /**
+ * The cached value of the '{@link #getUriMappings() <em>Uri Mappings</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getUriMappings()
+ * @generated
+ * @ordered
+ */
+ protected EList<URIMapping> uriMappings;
+
+ /**
+ * The cached value of the '{@link #getProfileUriMappings() <em>Profile Uri Mappings</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getProfileUriMappings()
+ * @generated
+ * @ordered
+ */
+ protected EList<URIMapping> profileUriMappings;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected MappingParametersImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RSAToPapyrusParametersPackage.Literals.MAPPING_PARAMETERS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EList<URIMapping> getUriMappings() {
+ if (uriMappings == null) {
+ uriMappings = new EObjectContainmentEList<URIMapping>(URIMapping.class, this, RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__URI_MAPPINGS);
+ }
+ return uriMappings;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EList<URIMapping> getProfileUriMappings() {
+ if (profileUriMappings == null) {
+ profileUriMappings = new EObjectContainmentEList<URIMapping>(URIMapping.class, this, RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS);
+ }
+ return profileUriMappings;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__URI_MAPPINGS:
+ return ((InternalEList<?>) getUriMappings()).basicRemove(otherEnd, msgs);
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS:
+ return ((InternalEList<?>) getProfileUriMappings()).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 RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__URI_MAPPINGS:
+ return getUriMappings();
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS:
+ return getProfileUriMappings();
+ }
+ 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 RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__URI_MAPPINGS:
+ getUriMappings().clear();
+ getUriMappings().addAll((Collection<? extends URIMapping>) newValue);
+ return;
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS:
+ getProfileUriMappings().clear();
+ getProfileUriMappings().addAll((Collection<? extends URIMapping>) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__URI_MAPPINGS:
+ getUriMappings().clear();
+ return;
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS:
+ getProfileUriMappings().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__URI_MAPPINGS:
+ return uriMappings != null && !uriMappings.isEmpty();
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS:
+ return profileUriMappings != null && !profileUriMappings.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // MappingParametersImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/RSAToPapyrusParametersFactoryImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/RSAToPapyrusParametersFactoryImpl.java
new file mode 100644
index 0000000..7a854a3
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/RSAToPapyrusParametersFactoryImpl.java
@@ -0,0 +1,138 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl;
+
+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;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class RSAToPapyrusParametersFactoryImpl extends EFactoryImpl implements RSAToPapyrusParametersFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static RSAToPapyrusParametersFactory init() {
+ try {
+ RSAToPapyrusParametersFactory theRSAToPapyrusParametersFactory = (RSAToPapyrusParametersFactory) EPackage.Registry.INSTANCE.getEFactory(RSAToPapyrusParametersPackage.eNS_URI);
+ if (theRSAToPapyrusParametersFactory != null) {
+ return theRSAToPapyrusParametersFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new RSAToPapyrusParametersFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public RSAToPapyrusParametersFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case RSAToPapyrusParametersPackage.CONFIG:
+ return createConfig();
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS:
+ return createMappingParameters();
+ case RSAToPapyrusParametersPackage.URI_MAPPING:
+ return createURIMapping();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Config createConfig() {
+ ConfigImpl config = new ConfigImpl();
+ return config;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public MappingParameters createMappingParameters() {
+ MappingParametersImpl mappingParameters = new MappingParametersImpl();
+ return mappingParameters;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public URIMapping createURIMapping() {
+ URIMappingImpl uriMapping = new URIMappingImpl();
+ return uriMapping;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public RSAToPapyrusParametersPackage getRSAToPapyrusParametersPackage() {
+ return (RSAToPapyrusParametersPackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static RSAToPapyrusParametersPackage getPackage() {
+ return RSAToPapyrusParametersPackage.eINSTANCE;
+ }
+
+} // RSAToPapyrusParametersFactoryImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/RSAToPapyrusParametersPackageImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/RSAToPapyrusParametersPackageImpl.java
new file mode 100644
index 0000000..8f888f9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/RSAToPapyrusParametersPackageImpl.java
@@ -0,0 +1,399 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl;
+
+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.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping;
+import org.eclipse.uml2.types.TypesPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class RSAToPapyrusParametersPackageImpl extends EPackageImpl implements RSAToPapyrusParametersPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass configEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass mappingParametersEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass uriMappingEClass = 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.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private RSAToPapyrusParametersPackageImpl() {
+ super(eNS_URI, RSAToPapyrusParametersFactory.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 RSAToPapyrusParametersPackage#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 RSAToPapyrusParametersPackage init() {
+ if (isInited) {
+ return (RSAToPapyrusParametersPackage) EPackage.Registry.INSTANCE.getEPackage(RSAToPapyrusParametersPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ RSAToPapyrusParametersPackageImpl theRSAToPapyrusParametersPackage = (RSAToPapyrusParametersPackageImpl) (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof RSAToPapyrusParametersPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI)
+ : new RSAToPapyrusParametersPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ TypesPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theRSAToPapyrusParametersPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theRSAToPapyrusParametersPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theRSAToPapyrusParametersPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(RSAToPapyrusParametersPackage.eNS_URI, theRSAToPapyrusParametersPackage);
+ return theRSAToPapyrusParametersPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getConfig() {
+ return configEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getConfig_MappingParameters() {
+ return (EReference) configEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getConfig_MaxThreads() {
+ return (EAttribute) configEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getConfig_RemoveUnmappedDiagrams() {
+ return (EAttribute) configEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getConfig_ConvertOpaqueExpressionToLiteralString() {
+ return (EAttribute) configEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getConfig_RemoveUnmappedProfilesAndStereotypes() {
+ return (EAttribute) configEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getConfig_RemoveUnmappedAnnotations() {
+ return (EAttribute) configEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getConfig_AlwaysAcceptSuggestedMappings() {
+ return (EAttribute) configEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getMappingParameters() {
+ return mappingParametersEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getMappingParameters_UriMappings() {
+ return (EReference) mappingParametersEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getMappingParameters_ProfileUriMappings() {
+ return (EReference) mappingParametersEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getURIMapping() {
+ return uriMappingEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getURIMapping_SourceURI() {
+ return (EAttribute) uriMappingEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getURIMapping_TargetURI() {
+ return (EAttribute) uriMappingEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public RSAToPapyrusParametersFactory getRSAToPapyrusParametersFactory() {
+ return (RSAToPapyrusParametersFactory) 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
+ configEClass = createEClass(CONFIG);
+ createEReference(configEClass, CONFIG__MAPPING_PARAMETERS);
+ createEAttribute(configEClass, CONFIG__MAX_THREADS);
+ createEAttribute(configEClass, CONFIG__REMOVE_UNMAPPED_DIAGRAMS);
+ createEAttribute(configEClass, CONFIG__CONVERT_OPAQUE_EXPRESSION_TO_LITERAL_STRING);
+ createEAttribute(configEClass, CONFIG__REMOVE_UNMAPPED_PROFILES_AND_STEREOTYPES);
+ createEAttribute(configEClass, CONFIG__REMOVE_UNMAPPED_ANNOTATIONS);
+ createEAttribute(configEClass, CONFIG__ALWAYS_ACCEPT_SUGGESTED_MAPPINGS);
+
+ mappingParametersEClass = createEClass(MAPPING_PARAMETERS);
+ createEReference(mappingParametersEClass, MAPPING_PARAMETERS__URI_MAPPINGS);
+ createEReference(mappingParametersEClass, MAPPING_PARAMETERS__PROFILE_URI_MAPPINGS);
+
+ uriMappingEClass = createEClass(URI_MAPPING);
+ createEAttribute(uriMappingEClass, URI_MAPPING__SOURCE_URI);
+ createEAttribute(uriMappingEClass, URI_MAPPING__TARGET_URI);
+ }
+
+ /**
+ * <!-- 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);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(configEClass, Config.class, "Config", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getConfig_MappingParameters(), this.getMappingParameters(), null, "mappingParameters", null, 1, 1, Config.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+ !IS_ORDERED);
+ initEAttribute(getConfig_MaxThreads(), theTypesPackage.getInteger(), "maxThreads", "2", 1, 1, Config.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getConfig_RemoveUnmappedDiagrams(), theTypesPackage.getBoolean(), "removeUnmappedDiagrams", "false", 1, 1, Config.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getConfig_ConvertOpaqueExpressionToLiteralString(), theTypesPackage.getBoolean(), "convertOpaqueExpressionToLiteralString", "true", 1, 1, Config.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE,
+ !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getConfig_RemoveUnmappedProfilesAndStereotypes(), theTypesPackage.getBoolean(), "removeUnmappedProfilesAndStereotypes", "false", 1, 1, Config.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE,
+ !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getConfig_RemoveUnmappedAnnotations(), theTypesPackage.getBoolean(), "removeUnmappedAnnotations", "false", 1, 1, Config.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getConfig_AlwaysAcceptSuggestedMappings(), theTypesPackage.getBoolean(), "alwaysAcceptSuggestedMappings", "false", 1, 1, Config.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+ !IS_ORDERED);
+
+ initEClass(mappingParametersEClass, MappingParameters.class, "MappingParameters", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getMappingParameters_UriMappings(), this.getURIMapping(), null, "uriMappings", null, 0, -1, MappingParameters.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+ !IS_ORDERED);
+ initEReference(getMappingParameters_ProfileUriMappings(), this.getURIMapping(), null, "profileUriMappings", null, 0, -1, MappingParameters.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+ !IS_DERIVED, !IS_ORDERED);
+
+ initEClass(uriMappingEClass, URIMapping.class, "URIMapping", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getURIMapping_SourceURI(), theTypesPackage.getString(), "sourceURI", null, 1, 1, URIMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+ initEAttribute(getURIMapping_TargetURI(), theTypesPackage.getString(), "targetURI", null, 1, 1, URIMapping.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} // RSAToPapyrusParametersPackageImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/URIMappingImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/URIMappingImpl.java
new file mode 100644
index 0000000..d1ef293
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/impl/URIMappingImpl.java
@@ -0,0 +1,246 @@
+/**
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.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.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>URI Mapping</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.URIMappingImpl#getSourceURI <em>Source URI</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.impl.URIMappingImpl#getTargetURI <em>Target URI</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class URIMappingImpl extends MinimalEObjectImpl.Container implements URIMapping {
+ /**
+ * The default value of the '{@link #getSourceURI() <em>Source URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getSourceURI()
+ * @generated
+ * @ordered
+ */
+ protected static final String SOURCE_URI_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getSourceURI() <em>Source URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getSourceURI()
+ * @generated
+ * @ordered
+ */
+ protected String sourceURI = SOURCE_URI_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getTargetURI() <em>Target URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getTargetURI()
+ * @generated
+ * @ordered
+ */
+ protected static final String TARGET_URI_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getTargetURI() <em>Target URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getTargetURI()
+ * @generated
+ * @ordered
+ */
+ protected String targetURI = TARGET_URI_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected URIMappingImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return RSAToPapyrusParametersPackage.Literals.URI_MAPPING;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getSourceURI() {
+ return sourceURI;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setSourceURI(String newSourceURI) {
+ String oldSourceURI = sourceURI;
+ sourceURI = newSourceURI;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.URI_MAPPING__SOURCE_URI, oldSourceURI, sourceURI));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getTargetURI() {
+ return targetURI;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setTargetURI(String newTargetURI) {
+ String oldTargetURI = targetURI;
+ targetURI = newTargetURI;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, RSAToPapyrusParametersPackage.URI_MAPPING__TARGET_URI, oldTargetURI, targetURI));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.URI_MAPPING__SOURCE_URI:
+ return getSourceURI();
+ case RSAToPapyrusParametersPackage.URI_MAPPING__TARGET_URI:
+ return getTargetURI();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.URI_MAPPING__SOURCE_URI:
+ setSourceURI((String) newValue);
+ return;
+ case RSAToPapyrusParametersPackage.URI_MAPPING__TARGET_URI:
+ setTargetURI((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.URI_MAPPING__SOURCE_URI:
+ setSourceURI(SOURCE_URI_EDEFAULT);
+ return;
+ case RSAToPapyrusParametersPackage.URI_MAPPING__TARGET_URI:
+ setTargetURI(TARGET_URI_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case RSAToPapyrusParametersPackage.URI_MAPPING__SOURCE_URI:
+ return SOURCE_URI_EDEFAULT == null ? sourceURI != null : !SOURCE_URI_EDEFAULT.equals(sourceURI);
+ case RSAToPapyrusParametersPackage.URI_MAPPING__TARGET_URI:
+ return TARGET_URI_EDEFAULT == null ? targetURI != null : !TARGET_URI_EDEFAULT.equals(targetURI);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (sourceURI: ");
+ result.append(sourceURI);
+ result.append(", targetURI: ");
+ result.append(targetURI);
+ result.append(')');
+ return result.toString();
+ }
+
+} // URIMappingImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/util/RSAToPapyrusParametersAdapterFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/util/RSAToPapyrusParametersAdapterFactory.java
new file mode 100644
index 0000000..b21cdb2
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/util/RSAToPapyrusParametersAdapterFactory.java
@@ -0,0 +1,175 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.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.interoperability.rsa.RSAToPapyrusParameters.*;
+
+/**
+ * <!-- 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.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage
+ * @generated
+ */
+public class RSAToPapyrusParametersAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static RSAToPapyrusParametersPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public RSAToPapyrusParametersAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = RSAToPapyrusParametersPackage.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 RSAToPapyrusParametersSwitch<Adapter> modelSwitch = new RSAToPapyrusParametersSwitch<Adapter>() {
+ @Override
+ public Adapter caseConfig(Config object) {
+ return createConfigAdapter();
+ }
+
+ @Override
+ public Adapter caseMappingParameters(MappingParameters object) {
+ return createMappingParametersAdapter();
+ }
+
+ @Override
+ public Adapter caseURIMapping(URIMapping object) {
+ return createURIMappingAdapter();
+ }
+
+ @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.interoperability.rsa.RSAToPapyrusParameters.Config <em>Config</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.interoperability.rsa.RSAToPapyrusParameters.Config
+ * @generated
+ */
+ public Adapter createConfigAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters <em>Mapping Parameters</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.interoperability.rsa.RSAToPapyrusParameters.MappingParameters
+ * @generated
+ */
+ public Adapter createMappingParametersAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping <em>URI Mapping</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.interoperability.rsa.RSAToPapyrusParameters.URIMapping
+ * @generated
+ */
+ public Adapter createURIMappingAdapter() {
+ 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;
+ }
+
+} // RSAToPapyrusParametersAdapterFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/util/RSAToPapyrusParametersSwitch.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/util/RSAToPapyrusParametersSwitch.java
new file mode 100644
index 0000000..be06ca4
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/RSAToPapyrusParameters/util/RSAToPapyrusParametersSwitch.java
@@ -0,0 +1,179 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.*;
+
+/**
+ * <!-- 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.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersPackage
+ * @generated
+ */
+public class RSAToPapyrusParametersSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static RSAToPapyrusParametersPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public RSAToPapyrusParametersSwitch() {
+ if (modelPackage == null) {
+ modelPackage = RSAToPapyrusParametersPackage.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 RSAToPapyrusParametersPackage.CONFIG: {
+ Config config = (Config) theEObject;
+ T result = caseConfig(config);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case RSAToPapyrusParametersPackage.MAPPING_PARAMETERS: {
+ MappingParameters mappingParameters = (MappingParameters) theEObject;
+ T result = caseMappingParameters(mappingParameters);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case RSAToPapyrusParametersPackage.URI_MAPPING: {
+ URIMapping uriMapping = (URIMapping) theEObject;
+ T result = caseURIMapping(uriMapping);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Config</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>Config</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConfig(Config object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Mapping Parameters</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>Mapping Parameters</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMappingParameters(MappingParameters object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>URI Mapping</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>URI Mapping</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseURIMapping(URIMapping 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;
+ }
+
+} // RSAToPapyrusParametersSwitch
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/AbstractConstraint.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/AbstractConstraint.java
new file mode 100644
index 0000000..2f1eb0a
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/AbstractConstraint.java
@@ -0,0 +1,128 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.Constraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Abstract Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getBase_Constraint <em>Base Constraint</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getEvaluationMode <em>Evaluation Mode</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getSeverity <em>Severity</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getAbstractConstraint()
+ * @model abstract="true"
+ * @generated
+ */
+public interface AbstractConstraint extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Constraint</em>' reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Base Constraint</em>' reference.
+ * @see #setBase_Constraint(Constraint)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getAbstractConstraint_Base_Constraint()
+ * @model required="true"
+ * @generated
+ */
+ Constraint getBase_Constraint();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getBase_Constraint <em>Base Constraint</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Constraint</em>' reference.
+ * @see #getBase_Constraint()
+ * @generated
+ */
+ void setBase_Constraint(Constraint value);
+
+ /**
+ * Returns the value of the '<em><b>Evaluation Mode</b></em>' attribute.
+ * The default value is <code>"batch"</code>.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.interoperability.rsa.default_.Mode}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Evaluation Mode</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Evaluation Mode</em>' attribute.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Mode
+ * @see #setEvaluationMode(Mode)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getAbstractConstraint_EvaluationMode()
+ * @model default="batch" required="true"
+ * @generated
+ */
+ Mode getEvaluationMode();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getEvaluationMode <em>Evaluation Mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Evaluation Mode</em>' attribute.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Mode
+ * @see #getEvaluationMode()
+ * @generated
+ */
+ void setEvaluationMode(Mode value);
+
+ /**
+ * Returns the value of the '<em><b>Severity</b></em>' attribute.
+ * The default value is <code>"error"</code>.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.interoperability.rsa.default_.Severity}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Severity</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Severity</em>' attribute.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Severity
+ * @see #setSeverity(Severity)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getAbstractConstraint_Severity()
+ * @model default="error" required="true"
+ * @generated
+ */
+ Severity getSeverity();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getSeverity <em>Severity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Severity</em>' attribute.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Severity
+ * @see #getSeverity()
+ * @generated
+ */
+ void setSeverity(Severity value);
+
+} // AbstractConstraint
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultFactory.java
new file mode 100644
index 0000000..441de53
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultFactory.java
@@ -0,0 +1,115 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+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.interoperability.rsa.default_.DefaultPackage
+ * @generated
+ */
+public interface DefaultFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ DefaultFactory eINSTANCE = org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Documentation</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Documentation</em>'.
+ * @generated
+ */
+ Documentation createDocumentation();
+
+ /**
+ * Returns a new object of class '<em>URL</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>URL</em>'.
+ * @generated
+ */
+ URL createURL();
+
+ /**
+ * Returns a new object of class '<em>Link</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Link</em>'.
+ * @generated
+ */
+ Link createLink();
+
+ /**
+ * Returns a new object of class '<em>Meta Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Meta Constraint</em>'.
+ * @generated
+ */
+ MetaConstraint createMetaConstraint();
+
+ /**
+ * Returns a new object of class '<em>Marking Model</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Marking Model</em>'.
+ * @generated
+ */
+ MarkingModel createMarkingModel();
+
+ /**
+ * Returns a new object of class '<em>Marking Import</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Marking Import</em>'.
+ * @generated
+ */
+ MarkingImport createMarkingImport();
+
+ /**
+ * Returns a new object of class '<em>Language</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Language</em>'.
+ * @generated
+ */
+ DefaultLanguage createDefaultLanguage();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ DefaultPackage getDefaultPackage();
+
+} // DefaultFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultLanguage.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultLanguage.java
new file mode 100644
index 0000000..1bf1ceb
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultLanguage.java
@@ -0,0 +1,90 @@
+/**
+ * * Copyright (c) 2013, 2014 CEA LIST.
+ * *
+ * * All rights reserved. This program and the accompanying materials
+ * * are made available under the terms of the Eclipse Public License v1.0
+ * * which accompanies this distribution, and is available at
+ * * http://www.eclipse.org/legal/epl-v10.html
+ * *
+ * * Contributors:
+ * * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Language</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage#getBase_Package <em>Base Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage#getDefaultLanguage <em>Default Language</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getDefaultLanguage()
+ * @model
+ * @generated
+ */
+public interface DefaultLanguage extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Package</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Package</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 Package</em>' reference.
+ * @see #setBase_Package(org.eclipse.uml2.uml.Package)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getDefaultLanguage_Base_Package()
+ * @model
+ * @generated
+ */
+ org.eclipse.uml2.uml.Package getBase_Package();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage#getBase_Package <em>Base Package</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Package</em>' reference.
+ * @see #getBase_Package()
+ * @generated
+ */
+ void setBase_Package(org.eclipse.uml2.uml.Package value);
+
+ /**
+ * Returns the value of the '<em><b>Default Language</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Default Language</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Default Language</em>' attribute.
+ * @see #setDefaultLanguage(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getDefaultLanguage_DefaultLanguage()
+ * @model
+ * @generated
+ */
+ String getDefaultLanguage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage#getDefaultLanguage <em>Default Language</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Default Language</em>' attribute.
+ * @see #getDefaultLanguage()
+ * @generated
+ */
+ void setDefaultLanguage(String value);
+
+} // DefaultLanguage
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultPackage.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultPackage.java
new file mode 100644
index 0000000..7208696
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/DefaultPackage.java
@@ -0,0 +1,1065 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+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.interoperability.rsa.default_.DefaultFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface DefaultPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNAME = "default";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/profile/default";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "default";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ DefaultPackage eINSTANCE = org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.DocumentationImpl <em>Documentation</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DocumentationImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getDocumentation()
+ * @generated
+ */
+ int DOCUMENTATION = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DOCUMENTATION__BASE_COMMENT = 0;
+
+ /**
+ * The number of structural features of the '<em>Documentation</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DOCUMENTATION_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Documentation</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DOCUMENTATION_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.URLImpl <em>URL</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.URLImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getURL()
+ * @generated
+ */
+ int URL = 1;
+
+ /**
+ * The feature id for the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URL__BASE_COMMENT = 0;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URL__TYPE = 1;
+
+ /**
+ * The feature id for the '<em><b>Display Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URL__DISPLAY_NAME = 2;
+
+ /**
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URL__ICON = 3;
+
+ /**
+ * The number of structural features of the '<em>URL</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URL_FEATURE_COUNT = 4;
+
+ /**
+ * The number of operations of the '<em>URL</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int URL_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.LinkImpl <em>Link</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.LinkImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getLink()
+ * @generated
+ */
+ int LINK = 2;
+
+ /**
+ * The feature id for the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int LINK__BASE_COMMENT = URL__BASE_COMMENT;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int LINK__TYPE = URL__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Display Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int LINK__DISPLAY_NAME = URL__DISPLAY_NAME;
+
+ /**
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int LINK__ICON = URL__ICON;
+
+ /**
+ * The number of structural features of the '<em>Link</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int LINK_FEATURE_COUNT = URL_FEATURE_COUNT + 0;
+
+ /**
+ * The number of operations of the '<em>Link</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int LINK_OPERATION_COUNT = URL_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.AbstractConstraintImpl <em>Abstract Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.AbstractConstraintImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getAbstractConstraint()
+ * @generated
+ */
+ int ABSTRACT_CONSTRAINT = 3;
+
+ /**
+ * The feature id for the '<em><b>Base Constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT__BASE_CONSTRAINT = 0;
+
+ /**
+ * The feature id for the '<em><b>Evaluation Mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT__EVALUATION_MODE = 1;
+
+ /**
+ * The feature id for the '<em><b>Severity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT__SEVERITY = 2;
+
+ /**
+ * The number of structural features of the '<em>Abstract Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT_FEATURE_COUNT = 3;
+
+ /**
+ * The number of operations of the '<em>Abstract Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ABSTRACT_CONSTRAINT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MetaConstraintImpl <em>Meta Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.MetaConstraintImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getMetaConstraint()
+ * @generated
+ */
+ int META_CONSTRAINT = 4;
+
+ /**
+ * The feature id for the '<em><b>Base Constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CONSTRAINT__BASE_CONSTRAINT = ABSTRACT_CONSTRAINT__BASE_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Evaluation Mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CONSTRAINT__EVALUATION_MODE = ABSTRACT_CONSTRAINT__EVALUATION_MODE;
+
+ /**
+ * The feature id for the '<em><b>Severity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CONSTRAINT__SEVERITY = ABSTRACT_CONSTRAINT__SEVERITY;
+
+ /**
+ * The feature id for the '<em><b>Message</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CONSTRAINT__MESSAGE = ABSTRACT_CONSTRAINT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Meta Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CONSTRAINT_FEATURE_COUNT = ABSTRACT_CONSTRAINT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Meta Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CONSTRAINT_OPERATION_COUNT = ABSTRACT_CONSTRAINT_OPERATION_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingModelImpl <em>Marking Model</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingModelImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getMarkingModel()
+ * @generated
+ */
+ int MARKING_MODEL = 5;
+
+ /**
+ * The feature id for the '<em><b>Base Package</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MARKING_MODEL__BASE_PACKAGE = 0;
+
+ /**
+ * The number of structural features of the '<em>Marking Model</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MARKING_MODEL_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Marking Model</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MARKING_MODEL_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingImportImpl <em>Marking Import</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingImportImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getMarkingImport()
+ * @generated
+ */
+ int MARKING_IMPORT = 6;
+
+ /**
+ * The feature id for the '<em><b>Base Element Import</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MARKING_IMPORT__BASE_ELEMENT_IMPORT = 0;
+
+ /**
+ * The number of structural features of the '<em>Marking Import</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MARKING_IMPORT_FEATURE_COUNT = 1;
+
+ /**
+ * The number of operations of the '<em>Marking Import</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MARKING_IMPORT_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultLanguageImpl <em>Language</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultLanguageImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getDefaultLanguage()
+ * @generated
+ */
+ int DEFAULT_LANGUAGE = 7;
+
+ /**
+ * The feature id for the '<em><b>Base Package</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DEFAULT_LANGUAGE__BASE_PACKAGE = 0;
+
+ /**
+ * The feature id for the '<em><b>Default Language</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DEFAULT_LANGUAGE__DEFAULT_LANGUAGE = 1;
+
+ /**
+ * The number of structural features of the '<em>Language</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DEFAULT_LANGUAGE_FEATURE_COUNT = 2;
+
+ /**
+ * The number of operations of the '<em>Language</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DEFAULT_LANGUAGE_OPERATION_COUNT = 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.Mode <em>Mode</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Mode
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getMode()
+ * @generated
+ */
+ int MODE = 8;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.Severity <em>Severity</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Severity
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getSeverity()
+ * @generated
+ */
+ int SEVERITY = 9;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.default_.Documentation <em>Documentation</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Documentation</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Documentation
+ * @generated
+ */
+ EClass getDocumentation();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rsa.default_.Documentation#getBase_Comment <em>Base Comment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Base Comment</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Documentation#getBase_Comment()
+ * @see #getDocumentation()
+ * @generated
+ */
+ EReference getDocumentation_Base_Comment();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL <em>URL</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>URL</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.URL
+ * @generated
+ */
+ EClass getURL();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getBase_Comment <em>Base Comment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Base Comment</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.URL#getBase_Comment()
+ * @see #getURL()
+ * @generated
+ */
+ EReference getURL_Base_Comment();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getType <em>Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Type</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.URL#getType()
+ * @see #getURL()
+ * @generated
+ */
+ EAttribute getURL_Type();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getDisplayName <em>Display Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Display Name</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.URL#getDisplayName()
+ * @see #getURL()
+ * @generated
+ */
+ EAttribute getURL_DisplayName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getIcon <em>Icon</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Icon</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.URL#getIcon()
+ * @see #getURL()
+ * @generated
+ */
+ EAttribute getURL_Icon();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.default_.Link <em>Link</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Link</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Link
+ * @generated
+ */
+ EClass getLink();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint <em>Abstract Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Abstract Constraint</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint
+ * @generated
+ */
+ EClass getAbstractConstraint();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getBase_Constraint <em>Base Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Base Constraint</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getBase_Constraint()
+ * @see #getAbstractConstraint()
+ * @generated
+ */
+ EReference getAbstractConstraint_Base_Constraint();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getEvaluationMode <em>Evaluation Mode</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Evaluation Mode</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getEvaluationMode()
+ * @see #getAbstractConstraint()
+ * @generated
+ */
+ EAttribute getAbstractConstraint_EvaluationMode();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getSeverity <em>Severity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Severity</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint#getSeverity()
+ * @see #getAbstractConstraint()
+ * @generated
+ */
+ EAttribute getAbstractConstraint_Severity();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint <em>Meta Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Meta Constraint</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint
+ * @generated
+ */
+ EClass getMetaConstraint();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint#getMessage <em>Message</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Message</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint#getMessage()
+ * @see #getMetaConstraint()
+ * @generated
+ */
+ EAttribute getMetaConstraint_Message();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel <em>Marking Model</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Marking Model</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel
+ * @generated
+ */
+ EClass getMarkingModel();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel#getBase_Package <em>Base Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Base Package</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel#getBase_Package()
+ * @see #getMarkingModel()
+ * @generated
+ */
+ EReference getMarkingModel_Base_Package();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport <em>Marking Import</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Marking Import</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport
+ * @generated
+ */
+ EClass getMarkingImport();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport#getBase_ElementImport <em>Base Element Import</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Base Element Import</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport#getBase_ElementImport()
+ * @see #getMarkingImport()
+ * @generated
+ */
+ EReference getMarkingImport_Base_ElementImport();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage <em>Language</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Language</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage
+ * @generated
+ */
+ EClass getDefaultLanguage();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage#getBase_Package <em>Base Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Base Package</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage#getBase_Package()
+ * @see #getDefaultLanguage()
+ * @generated
+ */
+ EReference getDefaultLanguage_Base_Package();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage#getDefaultLanguage <em>Default Language</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Default Language</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage#getDefaultLanguage()
+ * @see #getDefaultLanguage()
+ * @generated
+ */
+ EAttribute getDefaultLanguage_DefaultLanguage();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.interoperability.rsa.default_.Mode <em>Mode</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for enum '<em>Mode</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Mode
+ * @generated
+ */
+ EEnum getMode();
+
+ /**
+ * Returns the meta object for enum '{@link org.eclipse.papyrus.interoperability.rsa.default_.Severity <em>Severity</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for enum '<em>Severity</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Severity
+ * @generated
+ */
+ EEnum getSeverity();
+
+ /**
+ * 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
+ */
+ DefaultFactory getDefaultFactory();
+
+ /**
+ * <!-- 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.interoperability.rsa.default_.impl.DocumentationImpl <em>Documentation</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DocumentationImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getDocumentation()
+ * @generated
+ */
+ EClass DOCUMENTATION = eINSTANCE.getDocumentation();
+
+ /**
+ * The meta object literal for the '<em><b>Base Comment</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference DOCUMENTATION__BASE_COMMENT = eINSTANCE.getDocumentation_Base_Comment();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.URLImpl <em>URL</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.URLImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getURL()
+ * @generated
+ */
+ EClass URL = eINSTANCE.getURL();
+
+ /**
+ * The meta object literal for the '<em><b>Base Comment</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference URL__BASE_COMMENT = eINSTANCE.getURL_Base_Comment();
+
+ /**
+ * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute URL__TYPE = eINSTANCE.getURL_Type();
+
+ /**
+ * The meta object literal for the '<em><b>Display Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute URL__DISPLAY_NAME = eINSTANCE.getURL_DisplayName();
+
+ /**
+ * The meta object literal for the '<em><b>Icon</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute URL__ICON = eINSTANCE.getURL_Icon();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.LinkImpl <em>Link</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.LinkImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getLink()
+ * @generated
+ */
+ EClass LINK = eINSTANCE.getLink();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.AbstractConstraintImpl <em>Abstract Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.AbstractConstraintImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getAbstractConstraint()
+ * @generated
+ */
+ EClass ABSTRACT_CONSTRAINT = eINSTANCE.getAbstractConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Base Constraint</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference ABSTRACT_CONSTRAINT__BASE_CONSTRAINT = eINSTANCE.getAbstractConstraint_Base_Constraint();
+
+ /**
+ * The meta object literal for the '<em><b>Evaluation Mode</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute ABSTRACT_CONSTRAINT__EVALUATION_MODE = eINSTANCE.getAbstractConstraint_EvaluationMode();
+
+ /**
+ * The meta object literal for the '<em><b>Severity</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute ABSTRACT_CONSTRAINT__SEVERITY = eINSTANCE.getAbstractConstraint_Severity();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MetaConstraintImpl <em>Meta Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.MetaConstraintImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getMetaConstraint()
+ * @generated
+ */
+ EClass META_CONSTRAINT = eINSTANCE.getMetaConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Message</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute META_CONSTRAINT__MESSAGE = eINSTANCE.getMetaConstraint_Message();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingModelImpl <em>Marking Model</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingModelImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getMarkingModel()
+ * @generated
+ */
+ EClass MARKING_MODEL = eINSTANCE.getMarkingModel();
+
+ /**
+ * The meta object literal for the '<em><b>Base Package</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference MARKING_MODEL__BASE_PACKAGE = eINSTANCE.getMarkingModel_Base_Package();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingImportImpl <em>Marking Import</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingImportImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getMarkingImport()
+ * @generated
+ */
+ EClass MARKING_IMPORT = eINSTANCE.getMarkingImport();
+
+ /**
+ * The meta object literal for the '<em><b>Base Element Import</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference MARKING_IMPORT__BASE_ELEMENT_IMPORT = eINSTANCE.getMarkingImport_Base_ElementImport();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultLanguageImpl <em>Language</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultLanguageImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getDefaultLanguage()
+ * @generated
+ */
+ EClass DEFAULT_LANGUAGE = eINSTANCE.getDefaultLanguage();
+
+ /**
+ * The meta object literal for the '<em><b>Base Package</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference DEFAULT_LANGUAGE__BASE_PACKAGE = eINSTANCE.getDefaultLanguage_Base_Package();
+
+ /**
+ * The meta object literal for the '<em><b>Default Language</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute DEFAULT_LANGUAGE__DEFAULT_LANGUAGE = eINSTANCE.getDefaultLanguage_DefaultLanguage();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.Mode <em>Mode</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Mode
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getMode()
+ * @generated
+ */
+ EEnum MODE = eINSTANCE.getMode();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.default_.Severity <em>Severity</em>}' enum.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Severity
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultPackageImpl#getSeverity()
+ * @generated
+ */
+ EEnum SEVERITY = eINSTANCE.getSeverity();
+
+ }
+
+} // DefaultPackage
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Documentation.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Documentation.java
new file mode 100644
index 0000000..c9d55fd
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Documentation.java
@@ -0,0 +1,62 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Documentation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.Documentation#getBase_Comment <em>Base Comment</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getDocumentation()
+ * @model
+ * @generated
+ */
+public interface Documentation extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Comment</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 Comment</em>' reference.
+ * @see #setBase_Comment(Comment)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getDocumentation_Base_Comment()
+ * @model required="true"
+ * @generated
+ */
+ Comment getBase_Comment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.Documentation#getBase_Comment <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Comment</em>' reference.
+ * @see #getBase_Comment()
+ * @generated
+ */
+ void setBase_Comment(Comment value);
+
+} // Documentation
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Link.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Link.java
new file mode 100644
index 0000000..2b98cbe
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Link.java
@@ -0,0 +1,26 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Link</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getLink()
+ * @model
+ * @generated
+ */
+public interface Link extends URL {
+} // Link
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MarkingImport.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MarkingImport.java
new file mode 100644
index 0000000..048f7f3
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MarkingImport.java
@@ -0,0 +1,62 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.ElementImport;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Marking Import</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport#getBase_ElementImport <em>Base Element Import</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getMarkingImport()
+ * @model
+ * @generated
+ */
+public interface MarkingImport extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Element Import</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Element Import</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 Element Import</em>' reference.
+ * @see #setBase_ElementImport(ElementImport)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getMarkingImport_Base_ElementImport()
+ * @model required="true"
+ * @generated
+ */
+ ElementImport getBase_ElementImport();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport#getBase_ElementImport <em>Base Element Import</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Element Import</em>' reference.
+ * @see #getBase_ElementImport()
+ * @generated
+ */
+ void setBase_ElementImport(ElementImport value);
+
+} // MarkingImport
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MarkingModel.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MarkingModel.java
new file mode 100644
index 0000000..cd2f423
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MarkingModel.java
@@ -0,0 +1,61 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Marking Model</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel#getBase_Package <em>Base Package</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getMarkingModel()
+ * @model
+ * @generated
+ */
+public interface MarkingModel extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Package</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Package</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 Package</em>' reference.
+ * @see #setBase_Package(org.eclipse.uml2.uml.Package)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getMarkingModel_Base_Package()
+ * @model required="true"
+ * @generated
+ */
+ org.eclipse.uml2.uml.Package getBase_Package();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel#getBase_Package <em>Base Package</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Package</em>' reference.
+ * @see #getBase_Package()
+ * @generated
+ */
+ void setBase_Package(org.eclipse.uml2.uml.Package value);
+
+} // MarkingModel
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MetaConstraint.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MetaConstraint.java
new file mode 100644
index 0000000..006217e
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/MetaConstraint.java
@@ -0,0 +1,60 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Meta Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint#getMessage <em>Message</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getMetaConstraint()
+ * @model
+ * @generated
+ */
+public interface MetaConstraint extends AbstractConstraint {
+
+ /**
+ * Returns the value of the '<em><b>Message</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Message</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Message</em>' attribute.
+ * @see #setMessage(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getMetaConstraint_Message()
+ * @model required="true"
+ * @generated
+ */
+ String getMessage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint#getMessage <em>Message</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Message</em>' attribute.
+ * @see #getMessage()
+ * @generated
+ */
+ void setMessage(String value);
+} // MetaConstraint
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Mode.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Mode.java
new file mode 100644
index 0000000..104e03c
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Mode.java
@@ -0,0 +1,238 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+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>Mode</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getMode()
+ * @model
+ * @generated
+ */
+public enum Mode implements Enumerator {
+ /**
+ * The '<em><b>Batch</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #BATCH_VALUE
+ * @generated
+ * @ordered
+ */
+ BATCH(0, "batch", "batch"),
+
+ /**
+ * The '<em><b>Live</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #LIVE_VALUE
+ * @generated
+ * @ordered
+ */
+ LIVE(1, "live", "live");
+
+ /**
+ * The '<em><b>Batch</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Batch</b></em>' literal object isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #BATCH
+ * @model name="batch"
+ * @generated
+ * @ordered
+ */
+ public static final int BATCH_VALUE = 0;
+
+ /**
+ * The '<em><b>Live</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Live</b></em>' literal object isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #LIVE
+ * @model name="live"
+ * @generated
+ * @ordered
+ */
+ public static final int LIVE_VALUE = 1;
+
+ /**
+ * An array of all the '<em><b>Mode</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private static final Mode[] VALUES_ARRAY =
+ new Mode[] {
+ BATCH,
+ LIVE,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Mode</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static final List<Mode> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Mode</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static Mode get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Mode result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Mode</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static Mode getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Mode result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Mode</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static Mode get(int value) {
+ switch (value) {
+ case BATCH_VALUE:
+ return BATCH;
+ case LIVE_VALUE:
+ return LIVE;
+ }
+ 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 Mode(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ 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;
+ }
+
+} // Mode
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Severity.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Severity.java
new file mode 100644
index 0000000..2dfc3cd
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/Severity.java
@@ -0,0 +1,267 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+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>Severity</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getSeverity()
+ * @model
+ * @generated
+ */
+public enum Severity implements Enumerator {
+ /**
+ * The '<em><b>Error</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #ERROR_VALUE
+ * @generated
+ * @ordered
+ */
+ ERROR(0, "error", "error"),
+
+ /**
+ * The '<em><b>Warning</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #WARNING_VALUE
+ * @generated
+ * @ordered
+ */
+ WARNING(1, "warning", "warning"),
+
+ /**
+ * The '<em><b>Info</b></em>' literal object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #INFO_VALUE
+ * @generated
+ * @ordered
+ */
+ INFO(2, "info", "info");
+
+ /**
+ * The '<em><b>Error</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Error</b></em>' literal object isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #ERROR
+ * @model name="error"
+ * @generated
+ * @ordered
+ */
+ public static final int ERROR_VALUE = 0;
+
+ /**
+ * The '<em><b>Warning</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Warning</b></em>' literal object isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #WARNING
+ * @model name="warning"
+ * @generated
+ * @ordered
+ */
+ public static final int WARNING_VALUE = 1;
+
+ /**
+ * The '<em><b>Info</b></em>' literal value.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of '<em><b>Info</b></em>' literal object isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @see #INFO
+ * @model name="info"
+ * @generated
+ * @ordered
+ */
+ public static final int INFO_VALUE = 2;
+
+ /**
+ * An array of all the '<em><b>Severity</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private static final Severity[] VALUES_ARRAY =
+ new Severity[] {
+ ERROR,
+ WARNING,
+ INFO,
+ };
+
+ /**
+ * A public read-only list of all the '<em><b>Severity</b></em>' enumerators.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static final List<Severity> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+ /**
+ * Returns the '<em><b>Severity</b></em>' literal with the specified literal value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static Severity get(String literal) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Severity result = VALUES_ARRAY[i];
+ if (result.toString().equals(literal)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Severity</b></em>' literal with the specified name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static Severity getByName(String name) {
+ for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+ Severity result = VALUES_ARRAY[i];
+ if (result.getName().equals(name)) {
+ return result;
+ }
+ }
+ return null;
+ }
+
+ /**
+ * Returns the '<em><b>Severity</b></em>' literal with the specified integer value.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static Severity get(int value) {
+ switch (value) {
+ case ERROR_VALUE:
+ return ERROR;
+ case WARNING_VALUE:
+ return WARNING;
+ case INFO_VALUE:
+ return INFO;
+ }
+ 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 Severity(int value, String name, String literal) {
+ this.value = value;
+ this.name = name;
+ this.literal = literal;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int getValue() {
+ return value;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getName() {
+ return name;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ 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;
+ }
+
+} // Severity
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/URL.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/URL.java
new file mode 100644
index 0000000..3891050
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/URL.java
@@ -0,0 +1,149 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>URL</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getBase_Comment <em>Base Comment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getDisplayName <em>Display Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getIcon <em>Icon</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getURL()
+ * @model
+ * @generated
+ */
+public interface URL extends EObject {
+ /**
+ * Returns the value of the '<em><b>Base Comment</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Comment</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 Comment</em>' reference.
+ * @see #setBase_Comment(Comment)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getURL_Base_Comment()
+ * @model required="true"
+ * @generated
+ */
+ Comment getBase_Comment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getBase_Comment <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Comment</em>' reference.
+ * @see #getBase_Comment()
+ * @generated
+ */
+ void setBase_Comment(Comment value);
+
+ /**
+ * Returns the value of the '<em><b>Type</b></em>' attribute.
+ * <!-- 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 #setType(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getURL_Type()
+ * @model required="true"
+ * @generated
+ */
+ String getType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getType <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Type</em>' attribute.
+ * @see #getType()
+ * @generated
+ */
+ void setType(String value);
+
+ /**
+ * Returns the value of the '<em><b>Display Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Display Name</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Display Name</em>' attribute.
+ * @see #setDisplayName(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getURL_DisplayName()
+ * @model required="true"
+ * @generated
+ */
+ String getDisplayName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getDisplayName <em>Display Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Display Name</em>' attribute.
+ * @see #getDisplayName()
+ * @generated
+ */
+ void setDisplayName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Icon</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Icon</em>' attribute.
+ * @see #setIcon(byte[])
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage#getURL_Icon()
+ * @model required="true"
+ * @generated
+ */
+ byte[] getIcon();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL#getIcon <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Icon</em>' attribute.
+ * @see #getIcon()
+ * @generated
+ */
+ void setIcon(byte[] value);
+
+} // URL
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/AbstractConstraintImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/AbstractConstraintImpl.java
new file mode 100644
index 0000000..4cfa6e8
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/AbstractConstraintImpl.java
@@ -0,0 +1,320 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.AbstractConstraint;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.Mode;
+import org.eclipse.papyrus.interoperability.rsa.default_.Severity;
+import org.eclipse.uml2.uml.Constraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Abstract Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.AbstractConstraintImpl#getBase_Constraint <em>Base Constraint</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.AbstractConstraintImpl#getEvaluationMode <em>Evaluation Mode</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.AbstractConstraintImpl#getSeverity <em>Severity</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class AbstractConstraintImpl extends MinimalEObjectImpl.Container implements AbstractConstraint {
+ /**
+ * The cached value of the '{@link #getBase_Constraint() <em>Base Constraint</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBase_Constraint()
+ * @generated
+ * @ordered
+ */
+ protected Constraint base_Constraint;
+
+ /**
+ * The default value of the '{@link #getEvaluationMode() <em>Evaluation Mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getEvaluationMode()
+ * @generated
+ * @ordered
+ */
+ protected static final Mode EVALUATION_MODE_EDEFAULT = Mode.BATCH;
+
+ /**
+ * The cached value of the '{@link #getEvaluationMode() <em>Evaluation Mode</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getEvaluationMode()
+ * @generated
+ * @ordered
+ */
+ protected Mode evaluationMode = EVALUATION_MODE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getSeverity() <em>Severity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getSeverity()
+ * @generated
+ * @ordered
+ */
+ protected static final Severity SEVERITY_EDEFAULT = Severity.ERROR;
+
+ /**
+ * The cached value of the '{@link #getSeverity() <em>Severity</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getSeverity()
+ * @generated
+ * @ordered
+ */
+ protected Severity severity = SEVERITY_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected AbstractConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DefaultPackage.Literals.ABSTRACT_CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Constraint getBase_Constraint() {
+ if (base_Constraint != null && base_Constraint.eIsProxy()) {
+ InternalEObject oldBase_Constraint = (InternalEObject) base_Constraint;
+ base_Constraint = (Constraint) eResolveProxy(oldBase_Constraint);
+ if (base_Constraint != oldBase_Constraint) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DefaultPackage.ABSTRACT_CONSTRAINT__BASE_CONSTRAINT, oldBase_Constraint, base_Constraint));
+ }
+ }
+ }
+ return base_Constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public Constraint basicGetBase_Constraint() {
+ return base_Constraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setBase_Constraint(Constraint newBase_Constraint) {
+ Constraint oldBase_Constraint = base_Constraint;
+ base_Constraint = newBase_Constraint;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.ABSTRACT_CONSTRAINT__BASE_CONSTRAINT, oldBase_Constraint, base_Constraint));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Mode getEvaluationMode() {
+ return evaluationMode;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setEvaluationMode(Mode newEvaluationMode) {
+ Mode oldEvaluationMode = evaluationMode;
+ evaluationMode = newEvaluationMode == null ? EVALUATION_MODE_EDEFAULT : newEvaluationMode;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.ABSTRACT_CONSTRAINT__EVALUATION_MODE, oldEvaluationMode, evaluationMode));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Severity getSeverity() {
+ return severity;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setSeverity(Severity newSeverity) {
+ Severity oldSeverity = severity;
+ severity = newSeverity == null ? SEVERITY_EDEFAULT : newSeverity;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.ABSTRACT_CONSTRAINT__SEVERITY, oldSeverity, severity));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DefaultPackage.ABSTRACT_CONSTRAINT__BASE_CONSTRAINT:
+ if (resolve) {
+ return getBase_Constraint();
+ }
+ return basicGetBase_Constraint();
+ case DefaultPackage.ABSTRACT_CONSTRAINT__EVALUATION_MODE:
+ return getEvaluationMode();
+ case DefaultPackage.ABSTRACT_CONSTRAINT__SEVERITY:
+ return getSeverity();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DefaultPackage.ABSTRACT_CONSTRAINT__BASE_CONSTRAINT:
+ setBase_Constraint((Constraint) newValue);
+ return;
+ case DefaultPackage.ABSTRACT_CONSTRAINT__EVALUATION_MODE:
+ setEvaluationMode((Mode) newValue);
+ return;
+ case DefaultPackage.ABSTRACT_CONSTRAINT__SEVERITY:
+ setSeverity((Severity) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.ABSTRACT_CONSTRAINT__BASE_CONSTRAINT:
+ setBase_Constraint((Constraint) null);
+ return;
+ case DefaultPackage.ABSTRACT_CONSTRAINT__EVALUATION_MODE:
+ setEvaluationMode(EVALUATION_MODE_EDEFAULT);
+ return;
+ case DefaultPackage.ABSTRACT_CONSTRAINT__SEVERITY:
+ setSeverity(SEVERITY_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.ABSTRACT_CONSTRAINT__BASE_CONSTRAINT:
+ return base_Constraint != null;
+ case DefaultPackage.ABSTRACT_CONSTRAINT__EVALUATION_MODE:
+ return evaluationMode != EVALUATION_MODE_EDEFAULT;
+ case DefaultPackage.ABSTRACT_CONSTRAINT__SEVERITY:
+ return severity != SEVERITY_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (evaluationMode: ");
+ result.append(evaluationMode);
+ result.append(", severity: ");
+ result.append(severity);
+ result.append(')');
+ return result.toString();
+ }
+
+} // AbstractConstraintImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultFactoryImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultFactoryImpl.java
new file mode 100644
index 0000000..ac27f3a
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultFactoryImpl.java
@@ -0,0 +1,289 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.DefaultFactory;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.Documentation;
+import org.eclipse.papyrus.interoperability.rsa.default_.Link;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel;
+import org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint;
+import org.eclipse.papyrus.interoperability.rsa.default_.Mode;
+import org.eclipse.papyrus.interoperability.rsa.default_.Severity;
+import org.eclipse.papyrus.interoperability.rsa.default_.URL;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class DefaultFactoryImpl extends EFactoryImpl implements DefaultFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static DefaultFactory init() {
+ try {
+ DefaultFactory theDefaultFactory = (DefaultFactory) EPackage.Registry.INSTANCE.getEFactory(DefaultPackage.eNS_URI);
+ if (theDefaultFactory != null) {
+ return theDefaultFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new DefaultFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public DefaultFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case DefaultPackage.DOCUMENTATION:
+ return createDocumentation();
+ case DefaultPackage.URL:
+ return createURL();
+ case DefaultPackage.LINK:
+ return createLink();
+ case DefaultPackage.META_CONSTRAINT:
+ return createMetaConstraint();
+ case DefaultPackage.MARKING_MODEL:
+ return createMarkingModel();
+ case DefaultPackage.MARKING_IMPORT:
+ return createMarkingImport();
+ case DefaultPackage.DEFAULT_LANGUAGE:
+ return createDefaultLanguage();
+ 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 DefaultPackage.MODE:
+ return createModeFromString(eDataType, initialValue);
+ case DefaultPackage.SEVERITY:
+ return createSeverityFromString(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 DefaultPackage.MODE:
+ return convertModeToString(eDataType, instanceValue);
+ case DefaultPackage.SEVERITY:
+ return convertSeverityToString(eDataType, instanceValue);
+ default:
+ throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Documentation createDocumentation() {
+ DocumentationImpl documentation = new DocumentationImpl();
+ return documentation;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public URL createURL() {
+ URLImpl url = new URLImpl();
+ return url;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Link createLink() {
+ LinkImpl link = new LinkImpl();
+ return link;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public MetaConstraint createMetaConstraint() {
+ MetaConstraintImpl metaConstraint = new MetaConstraintImpl();
+ return metaConstraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public MarkingModel createMarkingModel() {
+ MarkingModelImpl markingModel = new MarkingModelImpl();
+ return markingModel;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public MarkingImport createMarkingImport() {
+ MarkingImportImpl markingImport = new MarkingImportImpl();
+ return markingImport;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public DefaultLanguage createDefaultLanguage() {
+ DefaultLanguageImpl defaultLanguage = new DefaultLanguageImpl();
+ return defaultLanguage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public Mode createModeFromString(EDataType eDataType, String initialValue) {
+ Mode result = Mode.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 convertModeToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public Severity createSeverityFromString(EDataType eDataType, String initialValue) {
+ Severity result = Severity.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 convertSeverityToString(EDataType eDataType, Object instanceValue) {
+ return instanceValue == null ? null : instanceValue.toString();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public DefaultPackage getDefaultPackage() {
+ return (DefaultPackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static DefaultPackage getPackage() {
+ return DefaultPackage.eINSTANCE;
+ }
+
+} // DefaultFactoryImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultLanguageImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultLanguageImpl.java
new file mode 100644
index 0000000..bb3469b
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultLanguageImpl.java
@@ -0,0 +1,256 @@
+/**
+ * * Copyright (c) 2013, 2014 CEA LIST.
+ * *
+ * * All rights reserved. This program and the accompanying materials
+ * * are made available under the terms of the Eclipse Public License v1.0
+ * * which accompanies this distribution, and is available at
+ * * http://www.eclipse.org/legal/epl-v10.html
+ * *
+ * * Contributors:
+ * * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.DefaultLanguage;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Language</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultLanguageImpl#getBase_Package <em>Base Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.DefaultLanguageImpl#getDefaultLanguage <em>Default Language</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DefaultLanguageImpl extends MinimalEObjectImpl.Container implements DefaultLanguage {
+ /**
+ * The cached value of the '{@link #getBase_Package() <em>Base Package</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBase_Package()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Package base_Package;
+
+ /**
+ * The default value of the '{@link #getDefaultLanguage() <em>Default Language</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getDefaultLanguage()
+ * @generated
+ * @ordered
+ */
+ protected static final String DEFAULT_LANGUAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDefaultLanguage() <em>Default Language</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getDefaultLanguage()
+ * @generated
+ * @ordered
+ */
+ protected String defaultLanguage = DEFAULT_LANGUAGE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected DefaultLanguageImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DefaultPackage.Literals.DEFAULT_LANGUAGE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public org.eclipse.uml2.uml.Package getBase_Package() {
+ if (base_Package != null && base_Package.eIsProxy()) {
+ InternalEObject oldBase_Package = (InternalEObject) base_Package;
+ base_Package = (org.eclipse.uml2.uml.Package) eResolveProxy(oldBase_Package);
+ if (base_Package != oldBase_Package) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DefaultPackage.DEFAULT_LANGUAGE__BASE_PACKAGE, oldBase_Package, base_Package));
+ }
+ }
+ }
+ return base_Package;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Package basicGetBase_Package() {
+ return base_Package;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setBase_Package(org.eclipse.uml2.uml.Package newBase_Package) {
+ org.eclipse.uml2.uml.Package oldBase_Package = base_Package;
+ base_Package = newBase_Package;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.DEFAULT_LANGUAGE__BASE_PACKAGE, oldBase_Package, base_Package));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getDefaultLanguage() {
+ return defaultLanguage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setDefaultLanguage(String newDefaultLanguage) {
+ String oldDefaultLanguage = defaultLanguage;
+ defaultLanguage = newDefaultLanguage;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.DEFAULT_LANGUAGE__DEFAULT_LANGUAGE, oldDefaultLanguage, defaultLanguage));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DefaultPackage.DEFAULT_LANGUAGE__BASE_PACKAGE:
+ if (resolve) {
+ return getBase_Package();
+ }
+ return basicGetBase_Package();
+ case DefaultPackage.DEFAULT_LANGUAGE__DEFAULT_LANGUAGE:
+ return getDefaultLanguage();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DefaultPackage.DEFAULT_LANGUAGE__BASE_PACKAGE:
+ setBase_Package((org.eclipse.uml2.uml.Package) newValue);
+ return;
+ case DefaultPackage.DEFAULT_LANGUAGE__DEFAULT_LANGUAGE:
+ setDefaultLanguage((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.DEFAULT_LANGUAGE__BASE_PACKAGE:
+ setBase_Package((org.eclipse.uml2.uml.Package) null);
+ return;
+ case DefaultPackage.DEFAULT_LANGUAGE__DEFAULT_LANGUAGE:
+ setDefaultLanguage(DEFAULT_LANGUAGE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.DEFAULT_LANGUAGE__BASE_PACKAGE:
+ return base_Package != null;
+ case DefaultPackage.DEFAULT_LANGUAGE__DEFAULT_LANGUAGE:
+ return DEFAULT_LANGUAGE_EDEFAULT == null ? defaultLanguage != null : !DEFAULT_LANGUAGE_EDEFAULT.equals(defaultLanguage);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (defaultLanguage: ");
+ result.append(defaultLanguage);
+ result.append(')');
+ return result.toString();
+ }
+
+} // DefaultLanguageImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultPackageImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultPackageImpl.java
new file mode 100644
index 0000000..402e4b6
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DefaultPackageImpl.java
@@ -0,0 +1,594 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.AbstractConstraint;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultFactory;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.Documentation;
+import org.eclipse.papyrus.interoperability.rsa.default_.Link;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel;
+import org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint;
+import org.eclipse.papyrus.interoperability.rsa.default_.Mode;
+import org.eclipse.papyrus.interoperability.rsa.default_.Severity;
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class DefaultPackageImpl extends EPackageImpl implements DefaultPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass documentationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass urlEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass linkEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass abstractConstraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass metaConstraintEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass markingModelEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass markingImportEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass defaultLanguageEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EEnum modeEEnum = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EEnum severityEEnum = 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.interoperability.rsa.default_.DefaultPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private DefaultPackageImpl() {
+ super(eNS_URI, DefaultFactory.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 DefaultPackage#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 DefaultPackage init() {
+ if (isInited) {
+ return (DefaultPackage) EPackage.Registry.INSTANCE.getEPackage(DefaultPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ DefaultPackageImpl theDefaultPackage = (DefaultPackageImpl) (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof DefaultPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new DefaultPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ UMLPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theDefaultPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDefaultPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDefaultPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(DefaultPackage.eNS_URI, theDefaultPackage);
+ return theDefaultPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getDocumentation() {
+ return documentationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getDocumentation_Base_Comment() {
+ return (EReference) documentationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getURL() {
+ return urlEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getURL_Base_Comment() {
+ return (EReference) urlEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getURL_Type() {
+ return (EAttribute) urlEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getURL_DisplayName() {
+ return (EAttribute) urlEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getURL_Icon() {
+ return (EAttribute) urlEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getLink() {
+ return linkEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getAbstractConstraint() {
+ return abstractConstraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getAbstractConstraint_Base_Constraint() {
+ return (EReference) abstractConstraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getAbstractConstraint_EvaluationMode() {
+ return (EAttribute) abstractConstraintEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getAbstractConstraint_Severity() {
+ return (EAttribute) abstractConstraintEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getMetaConstraint() {
+ return metaConstraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getMetaConstraint_Message() {
+ return (EAttribute) metaConstraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getMarkingModel() {
+ return markingModelEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getMarkingModel_Base_Package() {
+ return (EReference) markingModelEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getMarkingImport() {
+ return markingImportEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getMarkingImport_Base_ElementImport() {
+ return (EReference) markingImportEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getDefaultLanguage() {
+ return defaultLanguageEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EReference getDefaultLanguage_Base_Package() {
+ return (EReference) defaultLanguageEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getDefaultLanguage_DefaultLanguage() {
+ return (EAttribute) defaultLanguageEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EEnum getMode() {
+ return modeEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EEnum getSeverity() {
+ return severityEEnum;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public DefaultFactory getDefaultFactory() {
+ return (DefaultFactory) 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
+ documentationEClass = createEClass(DOCUMENTATION);
+ createEReference(documentationEClass, DOCUMENTATION__BASE_COMMENT);
+
+ urlEClass = createEClass(URL);
+ createEReference(urlEClass, URL__BASE_COMMENT);
+ createEAttribute(urlEClass, URL__TYPE);
+ createEAttribute(urlEClass, URL__DISPLAY_NAME);
+ createEAttribute(urlEClass, URL__ICON);
+
+ linkEClass = createEClass(LINK);
+
+ abstractConstraintEClass = createEClass(ABSTRACT_CONSTRAINT);
+ createEReference(abstractConstraintEClass, ABSTRACT_CONSTRAINT__BASE_CONSTRAINT);
+ createEAttribute(abstractConstraintEClass, ABSTRACT_CONSTRAINT__EVALUATION_MODE);
+ createEAttribute(abstractConstraintEClass, ABSTRACT_CONSTRAINT__SEVERITY);
+
+ metaConstraintEClass = createEClass(META_CONSTRAINT);
+ createEAttribute(metaConstraintEClass, META_CONSTRAINT__MESSAGE);
+
+ markingModelEClass = createEClass(MARKING_MODEL);
+ createEReference(markingModelEClass, MARKING_MODEL__BASE_PACKAGE);
+
+ markingImportEClass = createEClass(MARKING_IMPORT);
+ createEReference(markingImportEClass, MARKING_IMPORT__BASE_ELEMENT_IMPORT);
+
+ defaultLanguageEClass = createEClass(DEFAULT_LANGUAGE);
+ createEReference(defaultLanguageEClass, DEFAULT_LANGUAGE__BASE_PACKAGE);
+ createEAttribute(defaultLanguageEClass, DEFAULT_LANGUAGE__DEFAULT_LANGUAGE);
+
+ // Create enums
+ modeEEnum = createEEnum(MODE);
+ severityEEnum = createEEnum(SEVERITY);
+ }
+
+ /**
+ * <!-- 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
+ UMLPackage theUMLPackage = (UMLPackage) EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+ EcorePackage theEcorePackage = (EcorePackage) EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ linkEClass.getESuperTypes().add(this.getURL());
+ metaConstraintEClass.getESuperTypes().add(this.getAbstractConstraint());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(documentationEClass, Documentation.class, "Documentation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDocumentation_Base_Comment(), theUMLPackage.getComment(), null, "base_Comment", null, 1, 1, Documentation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+ IS_ORDERED);
+
+ initEClass(urlEClass, org.eclipse.papyrus.interoperability.rsa.default_.URL.class, "URL", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getURL_Base_Comment(), theUMLPackage.getComment(), null, "base_Comment", null, 1, 1, org.eclipse.papyrus.interoperability.rsa.default_.URL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getURL_Type(), theEcorePackage.getEString(), "type", null, 1, 1, org.eclipse.papyrus.interoperability.rsa.default_.URL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getURL_DisplayName(), theEcorePackage.getEString(), "displayName", null, 1, 1, org.eclipse.papyrus.interoperability.rsa.default_.URL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getURL_Icon(), theEcorePackage.getEByteArray(), "icon", null, 1, 1, org.eclipse.papyrus.interoperability.rsa.default_.URL.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(linkEClass, Link.class, "Link", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(abstractConstraintEClass, AbstractConstraint.class, "AbstractConstraint", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAbstractConstraint_Base_Constraint(), theUMLPackage.getConstraint(), null, "base_Constraint", null, 1, 1, AbstractConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getAbstractConstraint_EvaluationMode(), this.getMode(), "evaluationMode", "batch", 1, 1, AbstractConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getAbstractConstraint_Severity(), this.getSeverity(), "severity", "error", 1, 1, AbstractConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(metaConstraintEClass, MetaConstraint.class, "MetaConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getMetaConstraint_Message(), theEcorePackage.getEString(), "message", null, 1, 1, MetaConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(markingModelEClass, MarkingModel.class, "MarkingModel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getMarkingModel_Base_Package(), theUMLPackage.getPackage(), null, "base_Package", null, 1, 1, MarkingModel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+ IS_ORDERED);
+
+ initEClass(markingImportEClass, MarkingImport.class, "MarkingImport", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getMarkingImport_Base_ElementImport(), theUMLPackage.getElementImport(), null, "base_ElementImport", null, 1, 1, MarkingImport.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+ IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(defaultLanguageEClass, DefaultLanguage.class, "DefaultLanguage", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDefaultLanguage_Base_Package(), theUMLPackage.getPackage(), null, "base_Package", null, 0, 1, DefaultLanguage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+ !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getDefaultLanguage_DefaultLanguage(), theEcorePackage.getEString(), "defaultLanguage", null, 0, 1, DefaultLanguage.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Initialize enums and add enum literals
+ initEEnum(modeEEnum, Mode.class, "Mode");
+ addEEnumLiteral(modeEEnum, Mode.BATCH);
+ addEEnumLiteral(modeEEnum, Mode.LIVE);
+
+ initEEnum(severityEEnum, Severity.class, "Severity");
+ addEEnumLiteral(severityEEnum, Severity.ERROR);
+ addEEnumLiteral(severityEEnum, Severity.WARNING);
+ addEEnumLiteral(severityEEnum, Severity.INFO);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} // DefaultPackageImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DocumentationImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DocumentationImpl.java
new file mode 100644
index 0000000..4638212
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/DocumentationImpl.java
@@ -0,0 +1,179 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.Documentation;
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Documentation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.DocumentationImpl#getBase_Comment <em>Base Comment</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class DocumentationImpl extends MinimalEObjectImpl.Container implements Documentation {
+ /**
+ * The cached value of the '{@link #getBase_Comment() <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBase_Comment()
+ * @generated
+ * @ordered
+ */
+ protected Comment base_Comment;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected DocumentationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DefaultPackage.Literals.DOCUMENTATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Comment getBase_Comment() {
+ if (base_Comment != null && base_Comment.eIsProxy()) {
+ InternalEObject oldBase_Comment = (InternalEObject) base_Comment;
+ base_Comment = (Comment) eResolveProxy(oldBase_Comment);
+ if (base_Comment != oldBase_Comment) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DefaultPackage.DOCUMENTATION__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+ }
+ }
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public Comment basicGetBase_Comment() {
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setBase_Comment(Comment newBase_Comment) {
+ Comment oldBase_Comment = base_Comment;
+ base_Comment = newBase_Comment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.DOCUMENTATION__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DefaultPackage.DOCUMENTATION__BASE_COMMENT:
+ if (resolve) {
+ return getBase_Comment();
+ }
+ return basicGetBase_Comment();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DefaultPackage.DOCUMENTATION__BASE_COMMENT:
+ setBase_Comment((Comment) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.DOCUMENTATION__BASE_COMMENT:
+ setBase_Comment((Comment) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.DOCUMENTATION__BASE_COMMENT:
+ return base_Comment != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // DocumentationImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/LinkImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/LinkImpl.java
new file mode 100644
index 0000000..d04a653
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/LinkImpl.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.Link;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Link</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * </p>
+ *
+ * @generated
+ */
+public class LinkImpl extends URLImpl implements Link {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected LinkImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DefaultPackage.Literals.LINK;
+ }
+
+} // LinkImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MarkingImportImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MarkingImportImpl.java
new file mode 100644
index 0000000..bef43d9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MarkingImportImpl.java
@@ -0,0 +1,179 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport;
+import org.eclipse.uml2.uml.ElementImport;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Marking Import</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingImportImpl#getBase_ElementImport <em>Base Element Import</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MarkingImportImpl extends MinimalEObjectImpl.Container implements MarkingImport {
+ /**
+ * The cached value of the '{@link #getBase_ElementImport() <em>Base Element Import</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBase_ElementImport()
+ * @generated
+ * @ordered
+ */
+ protected ElementImport base_ElementImport;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected MarkingImportImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DefaultPackage.Literals.MARKING_IMPORT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public ElementImport getBase_ElementImport() {
+ if (base_ElementImport != null && base_ElementImport.eIsProxy()) {
+ InternalEObject oldBase_ElementImport = (InternalEObject) base_ElementImport;
+ base_ElementImport = (ElementImport) eResolveProxy(oldBase_ElementImport);
+ if (base_ElementImport != oldBase_ElementImport) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DefaultPackage.MARKING_IMPORT__BASE_ELEMENT_IMPORT, oldBase_ElementImport, base_ElementImport));
+ }
+ }
+ }
+ return base_ElementImport;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementImport basicGetBase_ElementImport() {
+ return base_ElementImport;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setBase_ElementImport(ElementImport newBase_ElementImport) {
+ ElementImport oldBase_ElementImport = base_ElementImport;
+ base_ElementImport = newBase_ElementImport;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.MARKING_IMPORT__BASE_ELEMENT_IMPORT, oldBase_ElementImport, base_ElementImport));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DefaultPackage.MARKING_IMPORT__BASE_ELEMENT_IMPORT:
+ if (resolve) {
+ return getBase_ElementImport();
+ }
+ return basicGetBase_ElementImport();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DefaultPackage.MARKING_IMPORT__BASE_ELEMENT_IMPORT:
+ setBase_ElementImport((ElementImport) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.MARKING_IMPORT__BASE_ELEMENT_IMPORT:
+ setBase_ElementImport((ElementImport) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.MARKING_IMPORT__BASE_ELEMENT_IMPORT:
+ return base_ElementImport != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // MarkingImportImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MarkingModelImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MarkingModelImpl.java
new file mode 100644
index 0000000..a45b994
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MarkingModelImpl.java
@@ -0,0 +1,178 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Marking Model</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MarkingModelImpl#getBase_Package <em>Base Package</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MarkingModelImpl extends MinimalEObjectImpl.Container implements MarkingModel {
+ /**
+ * The cached value of the '{@link #getBase_Package() <em>Base Package</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBase_Package()
+ * @generated
+ * @ordered
+ */
+ protected org.eclipse.uml2.uml.Package base_Package;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected MarkingModelImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DefaultPackage.Literals.MARKING_MODEL;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public org.eclipse.uml2.uml.Package getBase_Package() {
+ if (base_Package != null && base_Package.eIsProxy()) {
+ InternalEObject oldBase_Package = (InternalEObject) base_Package;
+ base_Package = (org.eclipse.uml2.uml.Package) eResolveProxy(oldBase_Package);
+ if (base_Package != oldBase_Package) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DefaultPackage.MARKING_MODEL__BASE_PACKAGE, oldBase_Package, base_Package));
+ }
+ }
+ }
+ return base_Package;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public org.eclipse.uml2.uml.Package basicGetBase_Package() {
+ return base_Package;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setBase_Package(org.eclipse.uml2.uml.Package newBase_Package) {
+ org.eclipse.uml2.uml.Package oldBase_Package = base_Package;
+ base_Package = newBase_Package;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.MARKING_MODEL__BASE_PACKAGE, oldBase_Package, base_Package));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DefaultPackage.MARKING_MODEL__BASE_PACKAGE:
+ if (resolve) {
+ return getBase_Package();
+ }
+ return basicGetBase_Package();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DefaultPackage.MARKING_MODEL__BASE_PACKAGE:
+ setBase_Package((org.eclipse.uml2.uml.Package) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.MARKING_MODEL__BASE_PACKAGE:
+ setBase_Package((org.eclipse.uml2.uml.Package) null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.MARKING_MODEL__BASE_PACKAGE:
+ return base_Package != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} // MarkingModelImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MetaConstraintImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MetaConstraintImpl.java
new file mode 100644
index 0000000..f456d5e
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/MetaConstraintImpl.java
@@ -0,0 +1,183 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Meta Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.MetaConstraintImpl#getMessage <em>Message</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MetaConstraintImpl extends AbstractConstraintImpl implements MetaConstraint {
+ /**
+ * The default value of the '{@link #getMessage() <em>Message</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMessage()
+ * @generated
+ * @ordered
+ */
+ protected static final String MESSAGE_EDEFAULT = null;
+ /**
+ * The cached value of the '{@link #getMessage() <em>Message</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMessage()
+ * @generated
+ * @ordered
+ */
+ protected String message = MESSAGE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected MetaConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DefaultPackage.Literals.META_CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getMessage() {
+ return message;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setMessage(String newMessage) {
+ String oldMessage = message;
+ message = newMessage;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.META_CONSTRAINT__MESSAGE, oldMessage, message));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DefaultPackage.META_CONSTRAINT__MESSAGE:
+ return getMessage();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DefaultPackage.META_CONSTRAINT__MESSAGE:
+ setMessage((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.META_CONSTRAINT__MESSAGE:
+ setMessage(MESSAGE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.META_CONSTRAINT__MESSAGE:
+ return MESSAGE_EDEFAULT == null ? message != null : !MESSAGE_EDEFAULT.equals(message);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (message: ");
+ result.append(message);
+ result.append(')');
+ return result.toString();
+ }
+
+} // MetaConstraintImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/URLImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/URLImpl.java
new file mode 100644
index 0000000..7fdf6f9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/impl/URLImpl.java
@@ -0,0 +1,379 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.URL;
+import org.eclipse.uml2.uml.Comment;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>URL</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.URLImpl#getBase_Comment <em>Base Comment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.URLImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.URLImpl#getDisplayName <em>Display Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.default_.impl.URLImpl#getIcon <em>Icon</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class URLImpl extends MinimalEObjectImpl.Container implements URL {
+ /**
+ * The cached value of the '{@link #getBase_Comment() <em>Base Comment</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBase_Comment()
+ * @generated
+ * @ordered
+ */
+ protected Comment base_Comment;
+
+ /**
+ * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected static final String TYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getType()
+ * @generated
+ * @ordered
+ */
+ protected String type = TYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getDisplayName()
+ * @generated
+ * @ordered
+ */
+ protected static final String DISPLAY_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getDisplayName() <em>Display Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getDisplayName()
+ * @generated
+ * @ordered
+ */
+ protected String displayName = DISPLAY_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getIcon() <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getIcon()
+ * @generated
+ * @ordered
+ */
+ protected static final byte[] ICON_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getIcon() <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getIcon()
+ * @generated
+ * @ordered
+ */
+ protected byte[] icon = ICON_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected URLImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DefaultPackage.Literals.URL;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Comment getBase_Comment() {
+ if (base_Comment != null && base_Comment.eIsProxy()) {
+ InternalEObject oldBase_Comment = (InternalEObject) base_Comment;
+ base_Comment = (Comment) eResolveProxy(oldBase_Comment);
+ if (base_Comment != oldBase_Comment) {
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DefaultPackage.URL__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+ }
+ }
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public Comment basicGetBase_Comment() {
+ return base_Comment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setBase_Comment(Comment newBase_Comment) {
+ Comment oldBase_Comment = base_Comment;
+ base_Comment = newBase_Comment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.URL__BASE_COMMENT, oldBase_Comment, base_Comment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getType() {
+ return type;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setType(String newType) {
+ String oldType = type;
+ type = newType;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.URL__TYPE, oldType, type));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getDisplayName() {
+ return displayName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setDisplayName(String newDisplayName) {
+ String oldDisplayName = displayName;
+ displayName = newDisplayName;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.URL__DISPLAY_NAME, oldDisplayName, displayName));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public byte[] getIcon() {
+ return icon;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setIcon(byte[] newIcon) {
+ byte[] oldIcon = icon;
+ icon = newIcon;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, DefaultPackage.URL__ICON, oldIcon, icon));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DefaultPackage.URL__BASE_COMMENT:
+ if (resolve) {
+ return getBase_Comment();
+ }
+ return basicGetBase_Comment();
+ case DefaultPackage.URL__TYPE:
+ return getType();
+ case DefaultPackage.URL__DISPLAY_NAME:
+ return getDisplayName();
+ case DefaultPackage.URL__ICON:
+ return getIcon();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case DefaultPackage.URL__BASE_COMMENT:
+ setBase_Comment((Comment) newValue);
+ return;
+ case DefaultPackage.URL__TYPE:
+ setType((String) newValue);
+ return;
+ case DefaultPackage.URL__DISPLAY_NAME:
+ setDisplayName((String) newValue);
+ return;
+ case DefaultPackage.URL__ICON:
+ setIcon((byte[]) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.URL__BASE_COMMENT:
+ setBase_Comment((Comment) null);
+ return;
+ case DefaultPackage.URL__TYPE:
+ setType(TYPE_EDEFAULT);
+ return;
+ case DefaultPackage.URL__DISPLAY_NAME:
+ setDisplayName(DISPLAY_NAME_EDEFAULT);
+ return;
+ case DefaultPackage.URL__ICON:
+ setIcon(ICON_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DefaultPackage.URL__BASE_COMMENT:
+ return base_Comment != null;
+ case DefaultPackage.URL__TYPE:
+ return TYPE_EDEFAULT == null ? type != null : !TYPE_EDEFAULT.equals(type);
+ case DefaultPackage.URL__DISPLAY_NAME:
+ return DISPLAY_NAME_EDEFAULT == null ? displayName != null : !DISPLAY_NAME_EDEFAULT.equals(displayName);
+ case DefaultPackage.URL__ICON:
+ return ICON_EDEFAULT == null ? icon != null : !ICON_EDEFAULT.equals(icon);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (type: ");
+ result.append(type);
+ result.append(", displayName: ");
+ result.append(displayName);
+ result.append(", icon: ");
+ result.append(icon);
+ result.append(')');
+ return result.toString();
+ }
+
+} // URLImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultAdapterFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultAdapterFactory.java
new file mode 100644
index 0000000..04ef333
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultAdapterFactory.java
@@ -0,0 +1,284 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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.interoperability.rsa.default_.AbstractConstraint;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.Documentation;
+import org.eclipse.papyrus.interoperability.rsa.default_.Link;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel;
+import org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint;
+import org.eclipse.papyrus.interoperability.rsa.default_.URL;
+
+/**
+ * <!-- 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.interoperability.rsa.default_.DefaultPackage
+ * @generated
+ */
+public class DefaultAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static DefaultPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public DefaultAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = DefaultPackage.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 DefaultSwitch<Adapter> modelSwitch =
+ new DefaultSwitch<Adapter>() {
+ @Override
+ public Adapter caseDocumentation(Documentation object) {
+ return createDocumentationAdapter();
+ }
+
+ @Override
+ public Adapter caseURL(URL object) {
+ return createURLAdapter();
+ }
+
+ @Override
+ public Adapter caseLink(Link object) {
+ return createLinkAdapter();
+ }
+
+ @Override
+ public Adapter caseAbstractConstraint(AbstractConstraint object) {
+ return createAbstractConstraintAdapter();
+ }
+
+ @Override
+ public Adapter caseMetaConstraint(MetaConstraint object) {
+ return createMetaConstraintAdapter();
+ }
+
+ @Override
+ public Adapter caseMarkingModel(MarkingModel object) {
+ return createMarkingModelAdapter();
+ }
+
+ @Override
+ public Adapter caseMarkingImport(MarkingImport object) {
+ return createMarkingImportAdapter();
+ }
+
+ @Override
+ public Adapter caseDefaultLanguage(DefaultLanguage object) {
+ return createDefaultLanguageAdapter();
+ }
+
+ @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.interoperability.rsa.default_.Documentation <em>Documentation</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.interoperability.rsa.default_.Documentation
+ * @generated
+ */
+ public Adapter createDocumentationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.default_.URL <em>URL</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.interoperability.rsa.default_.URL
+ * @generated
+ */
+ public Adapter createURLAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.default_.Link <em>Link</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.Link
+ * @generated
+ */
+ public Adapter createLinkAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint <em>Abstract Constraint</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.interoperability.rsa.default_.AbstractConstraint
+ * @generated
+ */
+ public Adapter createAbstractConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint <em>Meta Constraint</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.interoperability.rsa.default_.MetaConstraint
+ * @generated
+ */
+ public Adapter createMetaConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel <em>Marking Model</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel
+ * @generated
+ */
+ public Adapter createMarkingModelAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport <em>Marking Import</em>}'.
+ * <!-- begin-user-doc -->
+ * This default implementation returns null so that we can easily ignore cases;
+ * it's useful to ignore a case when inheritance will catch all the cases anyway.
+ * <!-- end-user-doc -->
+ *
+ * @return the new adapter.
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport
+ * @generated
+ */
+ public Adapter createMarkingImportAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage <em>Language</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.interoperability.rsa.default_.DefaultLanguage
+ * @generated
+ */
+ public Adapter createDefaultLanguageAdapter() {
+ 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;
+ }
+
+} // DefaultAdapterFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultResourceFactoryImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultResourceFactoryImpl.java
new file mode 100644
index 0000000..6c61eb9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultResourceFactoryImpl.java
@@ -0,0 +1,51 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.util;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource Factory</b> associated with the package.
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.default_.util.DefaultResourceImpl
+ * @generated
+ */
+public class DefaultResourceFactoryImpl extends ResourceFactoryImpl {
+ /**
+ * Creates an instance of the resource factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public DefaultResourceFactoryImpl() {
+ super();
+ }
+
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Resource createResource(URI uri) {
+ Resource result = new DefaultResourceImpl(uri);
+ return result;
+ }
+
+} // DefaultResourceFactoryImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultResourceImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultResourceImpl.java
new file mode 100644
index 0000000..d69cc75
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultResourceImpl.java
@@ -0,0 +1,39 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.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 org.eclipse.papyrus.interoperability.rsa.default_.util.DefaultResourceFactoryImpl
+ * @generated
+ */
+public class DefaultResourceImpl extends XMLResourceImpl {
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param uri
+ * the URI of the new resource.
+ * @generated
+ */
+ public DefaultResourceImpl(URI uri) {
+ super(uri);
+ }
+
+} // DefaultResourceImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultSwitch.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultSwitch.java
new file mode 100644
index 0000000..d3b1c8e
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultSwitch.java
@@ -0,0 +1,317 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultLanguage;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.Documentation;
+import org.eclipse.papyrus.interoperability.rsa.default_.Link;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingImport;
+import org.eclipse.papyrus.interoperability.rsa.default_.MarkingModel;
+import org.eclipse.papyrus.interoperability.rsa.default_.MetaConstraint;
+import org.eclipse.papyrus.interoperability.rsa.default_.URL;
+
+/**
+ * <!-- 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.interoperability.rsa.default_.DefaultPackage
+ * @generated
+ */
+public class DefaultSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static DefaultPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public DefaultSwitch() {
+ if (modelPackage == null) {
+ modelPackage = DefaultPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @parameter 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 DefaultPackage.DOCUMENTATION: {
+ Documentation documentation = (Documentation) theEObject;
+ T result = caseDocumentation(documentation);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case DefaultPackage.URL: {
+ URL url = (URL) theEObject;
+ T result = caseURL(url);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case DefaultPackage.LINK: {
+ Link link = (Link) theEObject;
+ T result = caseLink(link);
+ if (result == null) {
+ result = caseURL(link);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case DefaultPackage.ABSTRACT_CONSTRAINT: {
+ AbstractConstraint abstractConstraint = (AbstractConstraint) theEObject;
+ T result = caseAbstractConstraint(abstractConstraint);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case DefaultPackage.META_CONSTRAINT: {
+ MetaConstraint metaConstraint = (MetaConstraint) theEObject;
+ T result = caseMetaConstraint(metaConstraint);
+ if (result == null) {
+ result = caseAbstractConstraint(metaConstraint);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case DefaultPackage.MARKING_MODEL: {
+ MarkingModel markingModel = (MarkingModel) theEObject;
+ T result = caseMarkingModel(markingModel);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case DefaultPackage.MARKING_IMPORT: {
+ MarkingImport markingImport = (MarkingImport) theEObject;
+ T result = caseMarkingImport(markingImport);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case DefaultPackage.DEFAULT_LANGUAGE: {
+ DefaultLanguage defaultLanguage = (DefaultLanguage) theEObject;
+ T result = caseDefaultLanguage(defaultLanguage);
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Documentation</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>Documentation</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDocumentation(Documentation object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>URL</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>URL</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseURL(URL object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Link</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Link</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLink(Link object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Constraint</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>Abstract Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractConstraint(AbstractConstraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Meta Constraint</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>Meta Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMetaConstraint(MetaConstraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Marking Model</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Marking Model</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMarkingModel(MarkingModel object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Marking Import</em>'.
+ * <!-- begin-user-doc -->
+ * This implementation returns null;
+ * returning a non-null result will terminate the switch.
+ * <!-- end-user-doc -->
+ *
+ * @param object
+ * the target of the switch.
+ * @return the result of interpreting the object as an instance of '<em>Marking Import</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMarkingImport(MarkingImport object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Language</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>Language</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDefaultLanguage(DefaultLanguage 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;
+ }
+
+} // DefaultSwitch
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultXMLProcessor.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultXMLProcessor.java
new file mode 100644
index 0000000..78e2b9c
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/default_/util/DefaultXMLProcessor.java
@@ -0,0 +1,59 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.default_.util;
+
+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;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+
+/**
+ * This class contains helper methods to serialize and deserialize XML documents
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class DefaultXMLProcessor extends XMLProcessor {
+
+ /**
+ * Public constructor to instantiate the helper.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public DefaultXMLProcessor() {
+ super((EPackage.Registry.INSTANCE));
+ DefaultPackage.eINSTANCE.eClass();
+ }
+
+ /**
+ * Register for "*" and "xml" file extensions the DefaultResourceFactoryImpl 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 DefaultResourceFactoryImpl());
+ registrations.put(STAR_EXTENSION, new DefaultResourceFactoryImpl());
+ }
+ return registrations;
+ }
+
+} // DefaultXMLProcessor
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolder.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolder.java
new file mode 100644
index 0000000..d092dda
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolder.java
@@ -0,0 +1,53 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.diagramholder;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EAnnotation;
+
+import org.eclipse.gmf.runtime.notation.Diagram;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Diagram Holder</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolder#getOwnedDiagrams <em>Owned Diagrams</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolderPackage#getDiagramHolder()
+ * @model
+ * @generated
+ */
+public interface DiagramHolder extends EAnnotation {
+ /**
+ * Returns the value of the '<em><b>Owned Diagrams</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.gmf.runtime.notation.Diagram}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Owned Diagrams</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>Owned Diagrams</em>' reference list.
+ * @see org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolderPackage#getDiagramHolder_OwnedDiagrams()
+ * @model
+ * @generated
+ */
+ EList<Diagram> getOwnedDiagrams();
+
+} // DiagramHolder
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolderFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolderFactory.java
new file mode 100644
index 0000000..6086de9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolderFactory.java
@@ -0,0 +1,51 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.diagramholder;
+
+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.interoperability.rsa.diagramholder.DiagramHolderPackage
+ * @generated
+ */
+public interface DiagramHolderFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DiagramHolderFactory eINSTANCE = org.eclipse.papyrus.interoperability.rsa.diagramholder.impl.DiagramHolderFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Diagram Holder</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return a new object of class '<em>Diagram Holder</em>'.
+ * @generated
+ */
+ DiagramHolder createDiagramHolder();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the package supported by this factory.
+ * @generated
+ */
+ DiagramHolderPackage getDiagramHolderPackage();
+
+} //DiagramHolderFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolderPackage.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolderPackage.java
new file mode 100644
index 0000000..4788c25
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/DiagramHolderPackage.java
@@ -0,0 +1,233 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.diagramholder;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+/**
+ * <!-- 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.interoperability.rsa.diagramholder.DiagramHolderFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface DiagramHolderPackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNAME = "diagramholder";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/migration/diagramholder";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ String eNS_PREFIX = "res";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ DiagramHolderPackage eINSTANCE = org.eclipse.papyrus.interoperability.rsa.diagramholder.impl.DiagramHolderPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.diagramholder.impl.DiagramHolderImpl <em>Diagram Holder</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.interoperability.rsa.diagramholder.impl.DiagramHolderImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.diagramholder.impl.DiagramHolderPackageImpl#getDiagramHolder()
+ * @generated
+ */
+ int DIAGRAM_HOLDER = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER__EANNOTATIONS = EcorePackage.EANNOTATION__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Source</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER__SOURCE = EcorePackage.EANNOTATION__SOURCE;
+
+ /**
+ * The feature id for the '<em><b>Details</b></em>' map.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER__DETAILS = EcorePackage.EANNOTATION__DETAILS;
+
+ /**
+ * The feature id for the '<em><b>EModel Element</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER__EMODEL_ELEMENT = EcorePackage.EANNOTATION__EMODEL_ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Contents</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER__CONTENTS = EcorePackage.EANNOTATION__CONTENTS;
+
+ /**
+ * The feature id for the '<em><b>References</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER__REFERENCES = EcorePackage.EANNOTATION__REFERENCES;
+
+ /**
+ * The feature id for the '<em><b>Owned Diagrams</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER__OWNED_DIAGRAMS = EcorePackage.EANNOTATION_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Diagram Holder</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER_FEATURE_COUNT = EcorePackage.EANNOTATION_FEATURE_COUNT + 1;
+
+ /**
+ * The operation id for the '<em>Get EAnnotation</em>' operation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER___GET_EANNOTATION__STRING = EcorePackage.EANNOTATION___GET_EANNOTATION__STRING;
+
+ /**
+ * The number of operations of the '<em>Diagram Holder</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM_HOLDER_OPERATION_COUNT = EcorePackage.EANNOTATION_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolder <em>Diagram Holder</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for class '<em>Diagram Holder</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolder
+ * @generated
+ */
+ EClass getDiagramHolder();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolder#getOwnedDiagrams <em>Owned Diagrams</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @return the meta object for the reference list '<em>Owned Diagrams</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolder#getOwnedDiagrams()
+ * @see #getDiagramHolder()
+ * @generated
+ */
+ EReference getDiagramHolder_OwnedDiagrams();
+
+ /**
+ * 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
+ */
+ DiagramHolderFactory getDiagramHolderFactory();
+
+ /**
+ * <!-- 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.interoperability.rsa.diagramholder.impl.DiagramHolderImpl <em>Diagram Holder</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see org.eclipse.papyrus.interoperability.rsa.diagramholder.impl.DiagramHolderImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.diagramholder.impl.DiagramHolderPackageImpl#getDiagramHolder()
+ * @generated
+ */
+ EClass DIAGRAM_HOLDER = eINSTANCE.getDiagramHolder();
+
+ /**
+ * The meta object literal for the '<em><b>Owned Diagrams</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ EReference DIAGRAM_HOLDER__OWNED_DIAGRAMS = eINSTANCE.getDiagramHolder_OwnedDiagrams();
+
+ }
+
+} //DiagramHolderPackage
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderFactoryImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderFactoryImpl.java
new file mode 100644
index 0000000..575940a
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderFactoryImpl.java
@@ -0,0 +1,103 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.diagramholder.impl;
+
+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;
+import org.eclipse.papyrus.interoperability.rsa.diagramholder.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DiagramHolderFactoryImpl extends EFactoryImpl implements DiagramHolderFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public static DiagramHolderFactory init() {
+ try {
+ DiagramHolderFactory theDiagramHolderFactory = (DiagramHolderFactory)EPackage.Registry.INSTANCE.getEFactory(DiagramHolderPackage.eNS_URI);
+ if (theDiagramHolderFactory != null) {
+ return theDiagramHolderFactory;
+ }
+ }
+ catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new DiagramHolderFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DiagramHolderFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case DiagramHolderPackage.DIAGRAM_HOLDER: return createDiagramHolder();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DiagramHolder createDiagramHolder() {
+ DiagramHolderImpl diagramHolder = new DiagramHolderImpl();
+ return diagramHolder;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DiagramHolderPackage getDiagramHolderPackage() {
+ return (DiagramHolderPackage)getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static DiagramHolderPackage getPackage() {
+ return DiagramHolderPackage.eINSTANCE;
+ }
+
+} //DiagramHolderFactoryImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderImpl.java
new file mode 100644
index 0000000..102e8e7
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderImpl.java
@@ -0,0 +1,143 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.diagramholder.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.EAnnotationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolder;
+import org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolderPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Diagram Holder</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.diagramholder.impl.DiagramHolderImpl#getOwnedDiagrams <em>Owned Diagrams</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class DiagramHolderImpl extends EAnnotationImpl implements DiagramHolder {
+ /**
+ * The cached value of the '{@link #getOwnedDiagrams() <em>Owned Diagrams</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @see #getOwnedDiagrams()
+ * @generated
+ * @ordered
+ */
+ protected EList<Diagram> ownedDiagrams;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected DiagramHolderImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DiagramHolderPackage.Literals.DIAGRAM_HOLDER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EList<Diagram> getOwnedDiagrams() {
+ if (ownedDiagrams == null) {
+ ownedDiagrams = new EObjectResolvingEList<Diagram>(Diagram.class, this, DiagramHolderPackage.DIAGRAM_HOLDER__OWNED_DIAGRAMS);
+ }
+ return ownedDiagrams;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case DiagramHolderPackage.DIAGRAM_HOLDER__OWNED_DIAGRAMS:
+ return getOwnedDiagrams();
+ }
+ 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 DiagramHolderPackage.DIAGRAM_HOLDER__OWNED_DIAGRAMS:
+ getOwnedDiagrams().clear();
+ getOwnedDiagrams().addAll((Collection<? extends Diagram>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case DiagramHolderPackage.DIAGRAM_HOLDER__OWNED_DIAGRAMS:
+ getOwnedDiagrams().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case DiagramHolderPackage.DIAGRAM_HOLDER__OWNED_DIAGRAMS:
+ return ownedDiagrams != null && !ownedDiagrams.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //DiagramHolderImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderPackageImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderPackageImpl.java
new file mode 100644
index 0000000..6639ec1
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/impl/DiagramHolderPackageImpl.java
@@ -0,0 +1,195 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.diagramholder.impl;
+
+import org.eclipse.emf.ecore.EClass;
+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.gmf.runtime.notation.NotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolder;
+import org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolderFactory;
+import org.eclipse.papyrus.interoperability.rsa.diagramholder.DiagramHolderPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class DiagramHolderPackageImpl extends EPackageImpl implements DiagramHolderPackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ private EClass diagramHolderEClass = 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.interoperability.rsa.diagramholder.DiagramHolderPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private DiagramHolderPackageImpl() {
+ super(eNS_URI, DiagramHolderFactory.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 DiagramHolderPackage#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 DiagramHolderPackage init() {
+ if (isInited) return (DiagramHolderPackage)EPackage.Registry.INSTANCE.getEPackage(DiagramHolderPackage.eNS_URI);
+
+ // Obtain or create and register package
+ DiagramHolderPackageImpl theDiagramHolderPackage = (DiagramHolderPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof DiagramHolderPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new DiagramHolderPackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ EcorePackage.eINSTANCE.eClass();
+ NotationPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theDiagramHolderPackage.createPackageContents();
+
+ // Initialize created meta-data
+ theDiagramHolderPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theDiagramHolderPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(DiagramHolderPackage.eNS_URI, theDiagramHolderPackage);
+ return theDiagramHolderPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EClass getDiagramHolder() {
+ return diagramHolderEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public EReference getDiagramHolder_OwnedDiagrams() {
+ return (EReference)diagramHolderEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DiagramHolderFactory getDiagramHolderFactory() {
+ return (DiagramHolderFactory)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
+ diagramHolderEClass = createEClass(DIAGRAM_HOLDER);
+ createEReference(diagramHolderEClass, DIAGRAM_HOLDER__OWNED_DIAGRAMS);
+ }
+
+ /**
+ * <!-- 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
+ EcorePackage theEcorePackage = (EcorePackage)EPackage.Registry.INSTANCE.getEPackage(EcorePackage.eNS_URI);
+ NotationPackage theNotationPackage = (NotationPackage)EPackage.Registry.INSTANCE.getEPackage(NotationPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ diagramHolderEClass.getESuperTypes().add(theEcorePackage.getEAnnotation());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(diagramHolderEClass, DiagramHolder.class, "DiagramHolder", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getDiagramHolder_OwnedDiagrams(), theNotationPackage.getDiagram(), null, "ownedDiagrams", null, 0, -1, DiagramHolder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} //DiagramHolderPackageImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/util/DiagramHolderAdapterFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/util/DiagramHolderAdapterFactory.java
new file mode 100644
index 0000000..916f061
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/util/DiagramHolderAdapterFactory.java
@@ -0,0 +1,166 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.diagramholder.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.EAnnotation;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.interoperability.rsa.diagramholder.*;
+
+/**
+ * <!-- 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.interoperability.rsa.diagramholder.DiagramHolderPackage
+ * @generated
+ */
+public class DiagramHolderAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DiagramHolderPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DiagramHolderAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = DiagramHolderPackage.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 DiagramHolderSwitch<Adapter> modelSwitch =
+ new DiagramHolderSwitch<Adapter>() {
+ @Override
+ public Adapter caseDiagramHolder(DiagramHolder object) {
+ return createDiagramHolderAdapter();
+ }
+ @Override
+ public Adapter caseEModelElement(EModelElement object) {
+ return createEModelElementAdapter();
+ }
+ @Override
+ public Adapter caseEAnnotation(EAnnotation object) {
+ return createEAnnotationAdapter();
+ }
+ @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.interoperability.rsa.diagramholder.DiagramHolder <em>Diagram Holder</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.interoperability.rsa.diagramholder.DiagramHolder
+ * @generated
+ */
+ public Adapter createDiagramHolderAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel 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.emf.ecore.EModelElement
+ * @generated
+ */
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EAnnotation <em>EAnnotation</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.emf.ecore.EAnnotation
+ * @generated
+ */
+ public Adapter createEAnnotationAdapter() {
+ 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;
+ }
+
+} //DiagramHolderAdapterFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/util/DiagramHolderSwitch.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/util/DiagramHolderSwitch.java
new file mode 100644
index 0000000..b6e9ea6
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/diagramholder/util/DiagramHolderSwitch.java
@@ -0,0 +1,152 @@
+/**
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ */
+package org.eclipse.papyrus.interoperability.rsa.diagramholder.util;
+
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.papyrus.interoperability.rsa.diagramholder.*;
+
+/**
+ * <!-- 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.interoperability.rsa.diagramholder.DiagramHolderPackage
+ * @generated
+ */
+public class DiagramHolderSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ protected static DiagramHolderPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+ public DiagramHolderSwitch() {
+ if (modelPackage == null) {
+ modelPackage = DiagramHolderPackage.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 DiagramHolderPackage.DIAGRAM_HOLDER: {
+ DiagramHolder diagramHolder = (DiagramHolder)theEObject;
+ T result = caseDiagramHolder(diagramHolder);
+ if (result == null) result = caseEAnnotation(diagramHolder);
+ if (result == null) result = caseEModelElement(diagramHolder);
+ if (result == null) result = defaultCase(theEObject);
+ return result;
+ }
+ default: return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Diagram Holder</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>Diagram Holder</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDiagramHolder(DiagramHolder object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel 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>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EAnnotation</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>EAnnotation</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEAnnotation(EAnnotation 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;
+ }
+
+} //DiagramHolderSwitch
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileBaseFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileBaseFactory.java
new file mode 100644
index 0000000..86edc9e
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileBaseFactory.java
@@ -0,0 +1,55 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase;
+
+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.interoperability.rsa.profilebase.ProfileBasePackage
+ * @generated
+ */
+public interface ProfileBaseFactory extends EFactory {
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ ProfileBaseFactory eINSTANCE = org.eclipse.papyrus.interoperability.rsa.profilebase.impl.ProfileBaseFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>Profile Constraint</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Profile Constraint</em>'.
+ * @generated
+ */
+ ProfileConstraint createProfileConstraint();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ ProfileBasePackage getProfileBasePackage();
+
+} // ProfileBaseFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileBasePackage.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileBasePackage.java
new file mode 100644
index 0000000..d053fcf
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileBasePackage.java
@@ -0,0 +1,215 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+
+/**
+ * <!-- 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.interoperability.rsa.profilebase.ProfileBaseFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface ProfileBasePackage extends EPackage {
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNAME = "profilebase";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/profile/profilebase";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "ProfileBase";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ ProfileBasePackage eINSTANCE = org.eclipse.papyrus.interoperability.rsa.profilebase.impl.ProfileBasePackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.profilebase.impl.ProfileConstraintImpl <em>Profile Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.profilebase.impl.ProfileConstraintImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.profilebase.impl.ProfileBasePackageImpl#getProfileConstraint()
+ * @generated
+ */
+ int PROFILE_CONSTRAINT = 0;
+
+ /**
+ * The feature id for the '<em><b>Base Constraint</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int PROFILE_CONSTRAINT__BASE_CONSTRAINT = DefaultPackage.ABSTRACT_CONSTRAINT__BASE_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Evaluation Mode</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int PROFILE_CONSTRAINT__EVALUATION_MODE = DefaultPackage.ABSTRACT_CONSTRAINT__EVALUATION_MODE;
+
+ /**
+ * The feature id for the '<em><b>Severity</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int PROFILE_CONSTRAINT__SEVERITY = DefaultPackage.ABSTRACT_CONSTRAINT__SEVERITY;
+
+ /**
+ * The feature id for the '<em><b>Message Key</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int PROFILE_CONSTRAINT__MESSAGE_KEY = DefaultPackage.ABSTRACT_CONSTRAINT_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Profile Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int PROFILE_CONSTRAINT_FEATURE_COUNT = DefaultPackage.ABSTRACT_CONSTRAINT_FEATURE_COUNT + 1;
+
+ /**
+ * The number of operations of the '<em>Profile Constraint</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int PROFILE_CONSTRAINT_OPERATION_COUNT = DefaultPackage.ABSTRACT_CONSTRAINT_OPERATION_COUNT + 0;
+
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint <em>Profile Constraint</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Profile Constraint</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint
+ * @generated
+ */
+ EClass getProfileConstraint();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint#getMessageKey <em>Message Key</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Message Key</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint#getMessageKey()
+ * @see #getProfileConstraint()
+ * @generated
+ */
+ EAttribute getProfileConstraint_MessageKey();
+
+ /**
+ * 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
+ */
+ ProfileBaseFactory getProfileBaseFactory();
+
+ /**
+ * <!-- 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.interoperability.rsa.profilebase.impl.ProfileConstraintImpl <em>Profile Constraint</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.profilebase.impl.ProfileConstraintImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.profilebase.impl.ProfileBasePackageImpl#getProfileConstraint()
+ * @generated
+ */
+ EClass PROFILE_CONSTRAINT = eINSTANCE.getProfileConstraint();
+
+ /**
+ * The meta object literal for the '<em><b>Message Key</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute PROFILE_CONSTRAINT__MESSAGE_KEY = eINSTANCE.getProfileConstraint_MessageKey();
+
+ }
+
+} // ProfileBasePackage
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileConstraint.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileConstraint.java
new file mode 100644
index 0000000..5f64e55
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/ProfileConstraint.java
@@ -0,0 +1,61 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase;
+
+import org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Profile Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint#getMessageKey <em>Message Key</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage#getProfileConstraint()
+ * @model
+ * @generated
+ */
+public interface ProfileConstraint extends AbstractConstraint {
+ /**
+ * Returns the value of the '<em><b>Message Key</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Message Key</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Message Key</em>' attribute.
+ * @see #setMessageKey(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage#getProfileConstraint_MessageKey()
+ * @model required="true"
+ * @generated
+ */
+ String getMessageKey();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint#getMessageKey <em>Message Key</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Message Key</em>' attribute.
+ * @see #getMessageKey()
+ * @generated
+ */
+ void setMessageKey(String value);
+
+} // ProfileConstraint
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileBaseFactoryImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileBaseFactoryImpl.java
new file mode 100644
index 0000000..7839dcd
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileBaseFactoryImpl.java
@@ -0,0 +1,112 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase.impl;
+
+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;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBaseFactory;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ProfileBaseFactoryImpl extends EFactoryImpl implements ProfileBaseFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static ProfileBaseFactory init() {
+ try {
+ ProfileBaseFactory theProfileBaseFactory = (ProfileBaseFactory) EPackage.Registry.INSTANCE.getEFactory(ProfileBasePackage.eNS_URI);
+ if (theProfileBaseFactory != null) {
+ return theProfileBaseFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new ProfileBaseFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ProfileBaseFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case ProfileBasePackage.PROFILE_CONSTRAINT:
+ return createProfileConstraint();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public ProfileConstraint createProfileConstraint() {
+ ProfileConstraintImpl profileConstraint = new ProfileConstraintImpl();
+ return profileConstraint;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public ProfileBasePackage getProfileBasePackage() {
+ return (ProfileBasePackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static ProfileBasePackage getPackage() {
+ return ProfileBasePackage.eINSTANCE;
+ }
+
+} // ProfileBaseFactoryImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileBasePackageImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileBasePackageImpl.java
new file mode 100644
index 0000000..791f15f
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileBasePackageImpl.java
@@ -0,0 +1,206 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBaseFactory;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ProfileBasePackageImpl extends EPackageImpl implements ProfileBasePackage {
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass profileConstraintEClass = 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.interoperability.rsa.profilebase.ProfileBasePackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private ProfileBasePackageImpl() {
+ super(eNS_URI, ProfileBaseFactory.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 ProfileBasePackage#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 ProfileBasePackage init() {
+ if (isInited) {
+ return (ProfileBasePackage) EPackage.Registry.INSTANCE.getEPackage(ProfileBasePackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ ProfileBasePackageImpl theProfileBasePackage = (ProfileBasePackageImpl) (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof ProfileBasePackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new ProfileBasePackageImpl());
+
+ isInited = true;
+
+ // Initialize simple dependencies
+ DefaultPackage.eINSTANCE.eClass();
+
+ // Create package meta-data objects
+ theProfileBasePackage.createPackageContents();
+
+ // Initialize created meta-data
+ theProfileBasePackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ theProfileBasePackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(ProfileBasePackage.eNS_URI, theProfileBasePackage);
+ return theProfileBasePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getProfileConstraint() {
+ return profileConstraintEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getProfileConstraint_MessageKey() {
+ return (EAttribute) profileConstraintEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public ProfileBaseFactory getProfileBaseFactory() {
+ return (ProfileBaseFactory) 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
+ profileConstraintEClass = createEClass(PROFILE_CONSTRAINT);
+ createEAttribute(profileConstraintEClass, PROFILE_CONSTRAINT__MESSAGE_KEY);
+ }
+
+ /**
+ * <!-- 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
+ DefaultPackage theDefaultPackage = (DefaultPackage) EPackage.Registry.INSTANCE.getEPackage(DefaultPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ profileConstraintEClass.getESuperTypes().add(theDefaultPackage.getAbstractConstraint());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(profileConstraintEClass, ProfileConstraint.class, "ProfileConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getProfileConstraint_MessageKey(), ecorePackage.getEString(), "messageKey", null, 1, 1, ProfileConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} // ProfileBasePackageImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileConstraintImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileConstraintImpl.java
new file mode 100644
index 0000000..756b736
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/impl/ProfileConstraintImpl.java
@@ -0,0 +1,185 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase.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.interoperability.rsa.default_.impl.AbstractConstraintImpl;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Profile Constraint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.profilebase.impl.ProfileConstraintImpl#getMessageKey <em>Message Key</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ProfileConstraintImpl extends AbstractConstraintImpl implements ProfileConstraint {
+ /**
+ * The default value of the '{@link #getMessageKey() <em>Message Key</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMessageKey()
+ * @generated
+ * @ordered
+ */
+ protected static final String MESSAGE_KEY_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getMessageKey() <em>Message Key</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMessageKey()
+ * @generated
+ * @ordered
+ */
+ protected String messageKey = MESSAGE_KEY_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ProfileConstraintImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return ProfileBasePackage.Literals.PROFILE_CONSTRAINT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getMessageKey() {
+ return messageKey;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setMessageKey(String newMessageKey) {
+ String oldMessageKey = messageKey;
+ messageKey = newMessageKey;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, ProfileBasePackage.PROFILE_CONSTRAINT__MESSAGE_KEY, oldMessageKey, messageKey));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case ProfileBasePackage.PROFILE_CONSTRAINT__MESSAGE_KEY:
+ return getMessageKey();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case ProfileBasePackage.PROFILE_CONSTRAINT__MESSAGE_KEY:
+ setMessageKey((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case ProfileBasePackage.PROFILE_CONSTRAINT__MESSAGE_KEY:
+ setMessageKey(MESSAGE_KEY_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case ProfileBasePackage.PROFILE_CONSTRAINT__MESSAGE_KEY:
+ return MESSAGE_KEY_EDEFAULT == null ? messageKey != null : !MESSAGE_KEY_EDEFAULT.equals(messageKey);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (messageKey: ");
+ result.append(messageKey);
+ result.append(')');
+ return result.toString();
+ }
+
+} // ProfileConstraintImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseAdapterFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseAdapterFactory.java
new file mode 100644
index 0000000..da75603
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseAdapterFactory.java
@@ -0,0 +1,158 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase.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.interoperability.rsa.default_.AbstractConstraint;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint;
+
+/**
+ * <!-- 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.interoperability.rsa.profilebase.ProfileBasePackage
+ * @generated
+ */
+public class ProfileBaseAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static ProfileBasePackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ProfileBaseAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = ProfileBasePackage.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 ProfileBaseSwitch<Adapter> modelSwitch =
+ new ProfileBaseSwitch<Adapter>() {
+ @Override
+ public Adapter caseProfileConstraint(ProfileConstraint object) {
+ return createProfileConstraintAdapter();
+ }
+
+ @Override
+ public Adapter caseAbstractConstraint(AbstractConstraint object) {
+ return createAbstractConstraintAdapter();
+ }
+
+ @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.interoperability.rsa.profilebase.ProfileConstraint <em>Profile Constraint</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.interoperability.rsa.profilebase.ProfileConstraint
+ * @generated
+ */
+ public Adapter createProfileConstraintAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint <em>Abstract Constraint</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.interoperability.rsa.default_.AbstractConstraint
+ * @generated
+ */
+ public Adapter createAbstractConstraintAdapter() {
+ 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;
+ }
+
+} // ProfileBaseAdapterFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseResourceFactoryImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseResourceFactoryImpl.java
new file mode 100644
index 0000000..e0ee95a
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseResourceFactoryImpl.java
@@ -0,0 +1,61 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase.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 org.eclipse.papyrus.interoperability.rsa.profilebase.util.ProfileBaseResourceImpl
+ * @generated
+ */
+public class ProfileBaseResourceFactoryImpl extends ResourceFactoryImpl {
+ /**
+ * Creates an instance of the resource factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ProfileBaseResourceFactoryImpl() {
+ super();
+ }
+
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Resource createResource(URI uri) {
+ XMLResource result = new ProfileBaseResourceImpl(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;
+ }
+
+} // ProfileBaseResourceFactoryImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseResourceImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseResourceImpl.java
new file mode 100644
index 0000000..9b3d825
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseResourceImpl.java
@@ -0,0 +1,39 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase.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 org.eclipse.papyrus.interoperability.rsa.profilebase.util.ProfileBaseResourceFactoryImpl
+ * @generated
+ */
+public class ProfileBaseResourceImpl extends XMLResourceImpl {
+ /**
+ * Creates an instance of the resource.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param uri
+ * the URI of the new resource.
+ * @generated
+ */
+ public ProfileBaseResourceImpl(URI uri) {
+ super(uri);
+ }
+
+} // ProfileBaseResourceImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseSwitch.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseSwitch.java
new file mode 100644
index 0000000..f7c9b71
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseSwitch.java
@@ -0,0 +1,150 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.papyrus.interoperability.rsa.default_.AbstractConstraint;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint;
+
+/**
+ * <!-- 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.interoperability.rsa.profilebase.ProfileBasePackage
+ * @generated
+ */
+public class ProfileBaseSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static ProfileBasePackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ProfileBaseSwitch() {
+ if (modelPackage == null) {
+ modelPackage = ProfileBasePackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @parameter 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 ProfileBasePackage.PROFILE_CONSTRAINT: {
+ ProfileConstraint profileConstraint = (ProfileConstraint) theEObject;
+ T result = caseProfileConstraint(profileConstraint);
+ if (result == null) {
+ result = caseAbstractConstraint(profileConstraint);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Profile Constraint</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>Profile Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseProfileConstraint(ProfileConstraint object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Abstract Constraint</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>Abstract Constraint</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAbstractConstraint(AbstractConstraint 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;
+ }
+
+} // ProfileBaseSwitch
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseXMLProcessor.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseXMLProcessor.java
new file mode 100644
index 0000000..21b96e6
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/profilebase/util/ProfileBaseXMLProcessor.java
@@ -0,0 +1,59 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.profilebase.util;
+
+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;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage;
+
+/**
+ * This class contains helper methods to serialize and deserialize XML documents
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ProfileBaseXMLProcessor extends XMLProcessor {
+
+ /**
+ * Public constructor to instantiate the helper.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ProfileBaseXMLProcessor() {
+ super((EPackage.Registry.INSTANCE));
+ ProfileBasePackage.eINSTANCE.eClass();
+ }
+
+ /**
+ * Register for "*" and "xml" file extensions the ProfileBaseResourceFactoryImpl 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 ProfileBaseResourceFactoryImpl());
+ registrations.put(STAR_EXTENSION, new ProfileBaseResourceFactoryImpl());
+ }
+ return registrations;
+ }
+
+} // ProfileBaseXMLProcessor
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/PapyrusUMLNotationFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/PapyrusUMLNotationFactory.java
new file mode 100644
index 0000000..7158a9d
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/PapyrusUMLNotationFactory.java
@@ -0,0 +1,116 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+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.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage
+ * @generated
+ */
+public interface PapyrusUMLNotationFactory extends EFactory {
+
+ /**
+ * The singleton instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ PapyrusUMLNotationFactory eINSTANCE = org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationFactoryImpl.init();
+
+ /**
+ * Returns a new object of class '<em>UML Diagram</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>UML Diagram</em>'.
+ * @generated
+ */
+ UMLDiagram createUMLDiagram();
+
+ /**
+ * Returns a new object of class '<em>UML Frame</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>UML Frame</em>'.
+ * @generated
+ */
+ UMLFrame createUMLFrame();
+
+ /**
+ * Returns a new object of class '<em>UML Shape Compartment</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>UML Shape Compartment</em>'.
+ * @generated
+ */
+ UMLShapeCompartment createUMLShapeCompartment();
+
+ /**
+ * Returns a new object of class '<em>UML Shape</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>UML Shape</em>'.
+ * @generated
+ */
+ UMLShape createUMLShape();
+
+ /**
+ * Returns a new object of class '<em>UML Connector</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>UML Connector</em>'.
+ * @generated
+ */
+ UMLConnector createUMLConnector();
+
+ /**
+ * Returns a new object of class '<em>UML Component</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>UML Component</em>'.
+ * @generated
+ */
+ UMLComponent createUMLComponent();
+
+ /**
+ * Returns a new object of class '<em>UML Classifier Shape</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>UML Classifier Shape</em>'.
+ * @generated
+ */
+ UMLClassifierShape createUMLClassifierShape();
+
+ /**
+ * Returns the package supported by this factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the package supported by this factory.
+ * @generated
+ */
+ PapyrusUMLNotationPackage getPapyrusUMLNotationPackage();
+
+} // PapyrusUMLNotationFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/PapyrusUMLNotationPackage.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/PapyrusUMLNotationPackage.java
new file mode 100644
index 0000000..d8b7e68
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/PapyrusUMLNotationPackage.java
@@ -0,0 +1,2913 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+
+/**
+ * <!-- 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 enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationFactory
+ * @model kind="package"
+ * @generated
+ */
+public interface PapyrusUMLNotationPackage extends EPackage {
+
+ /**
+ * The package name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNAME = "umlnotation";
+
+ /**
+ * The package namespace URI.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_URI = "http://www.eclipse.org/papyrus/umlnotation";
+
+ /**
+ * The package namespace name.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ String eNS_PREFIX = "umlnotationext";
+
+ /**
+ * The singleton instance of the package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ PapyrusUMLNotationPackage eINSTANCE = org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl.init();
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl <em>UML Diagram</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLDiagram()
+ * @generated
+ */
+ int UML_DIAGRAM = 0;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__EANNOTATIONS = NotationPackage.DIAGRAM__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__VISIBLE = NotationPackage.DIAGRAM__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__TYPE = NotationPackage.DIAGRAM__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Mutable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__MUTABLE = NotationPackage.DIAGRAM__MUTABLE;
+
+ /**
+ * The feature id for the '<em><b>Source Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__SOURCE_EDGES = NotationPackage.DIAGRAM__SOURCE_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Target Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__TARGET_EDGES = NotationPackage.DIAGRAM__TARGET_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__PERSISTED_CHILDREN = NotationPackage.DIAGRAM__PERSISTED_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__STYLES = NotationPackage.DIAGRAM__STYLES;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__ELEMENT = NotationPackage.DIAGRAM__ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Diagram</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__DIAGRAM = NotationPackage.DIAGRAM__DIAGRAM;
+
+ /**
+ * The feature id for the '<em><b>Transient Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__TRANSIENT_CHILDREN = NotationPackage.DIAGRAM__TRANSIENT_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__NAME = NotationPackage.DIAGRAM__NAME;
+
+ /**
+ * The feature id for the '<em><b>Measurement Unit</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__MEASUREMENT_UNIT = NotationPackage.DIAGRAM__MEASUREMENT_UNIT;
+
+ /**
+ * The feature id for the '<em><b>Edges</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DIAGRAM__PERSISTED_EDGES = NotationPackage.DIAGRAM__PERSISTED_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Transient Edges</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__TRANSIENT_EDGES = NotationPackage.DIAGRAM__TRANSIENT_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__SHOW_STEREOTYPE = NotationPackage.DIAGRAM_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Show List Visibility</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__SHOW_LIST_VISIBILITY = NotationPackage.DIAGRAM_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Show List Signature</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__SHOW_LIST_SIGNATURE = NotationPackage.DIAGRAM_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__ALIGNMENT = NotationPackage.DIAGRAM_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = NotationPackage.DIAGRAM_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Show List Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM__SHOW_LIST_STEREOTYPE = NotationPackage.DIAGRAM_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>UML Diagram</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_DIAGRAM_FEATURE_COUNT = NotationPackage.DIAGRAM_FEATURE_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl <em>UML Shape</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLShape()
+ * @generated
+ */
+ int UML_SHAPE = 3;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__EANNOTATIONS = NotationPackage.SHAPE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__VISIBLE = NotationPackage.SHAPE__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__TYPE = NotationPackage.SHAPE__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Mutable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__MUTABLE = NotationPackage.SHAPE__MUTABLE;
+
+ /**
+ * The feature id for the '<em><b>Source Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__SOURCE_EDGES = NotationPackage.SHAPE__SOURCE_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Target Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__TARGET_EDGES = NotationPackage.SHAPE__TARGET_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__PERSISTED_CHILDREN = NotationPackage.SHAPE__PERSISTED_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__STYLES = NotationPackage.SHAPE__STYLES;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__ELEMENT = NotationPackage.SHAPE__ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Diagram</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__DIAGRAM = NotationPackage.SHAPE__DIAGRAM;
+
+ /**
+ * The feature id for the '<em><b>Transient Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__TRANSIENT_CHILDREN = NotationPackage.SHAPE__TRANSIENT_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Layout Constraint</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__LAYOUT_CONSTRAINT = NotationPackage.SHAPE__LAYOUT_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Font Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__FONT_COLOR = NotationPackage.SHAPE__FONT_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Font Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__FONT_NAME = NotationPackage.SHAPE__FONT_NAME;
+
+ /**
+ * The feature id for the '<em><b>Font Height</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__FONT_HEIGHT = NotationPackage.SHAPE__FONT_HEIGHT;
+
+ /**
+ * The feature id for the '<em><b>Bold</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__BOLD = NotationPackage.SHAPE__BOLD;
+
+ /**
+ * The feature id for the '<em><b>Italic</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__ITALIC = NotationPackage.SHAPE__ITALIC;
+
+ /**
+ * The feature id for the '<em><b>Underline</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__UNDERLINE = NotationPackage.SHAPE__UNDERLINE;
+
+ /**
+ * The feature id for the '<em><b>Strike Through</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__STRIKE_THROUGH = NotationPackage.SHAPE__STRIKE_THROUGH;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__DESCRIPTION = NotationPackage.SHAPE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Fill Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__FILL_COLOR = NotationPackage.SHAPE__FILL_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Transparency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__TRANSPARENCY = NotationPackage.SHAPE__TRANSPARENCY;
+
+ /**
+ * The feature id for the '<em><b>Gradient</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__GRADIENT = NotationPackage.SHAPE__GRADIENT;
+
+ /**
+ * The feature id for the '<em><b>Line Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__LINE_COLOR = NotationPackage.SHAPE__LINE_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Line Width</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__LINE_WIDTH = NotationPackage.SHAPE__LINE_WIDTH;
+
+ /**
+ * The feature id for the '<em><b>Rounded Bendpoints Radius</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__ROUNDED_BENDPOINTS_RADIUS = NotationPackage.SHAPE__ROUNDED_BENDPOINTS_RADIUS;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__SHOW_STEREOTYPE = NotationPackage.SHAPE_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Show List Visibility</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__SHOW_LIST_VISIBILITY = NotationPackage.SHAPE_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Show List Signature</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__SHOW_LIST_SIGNATURE = NotationPackage.SHAPE_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__ALIGNMENT = NotationPackage.SHAPE_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = NotationPackage.SHAPE_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Show List Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE__SHOW_LIST_STEREOTYPE = NotationPackage.SHAPE_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>UML Shape</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_FEATURE_COUNT = NotationPackage.SHAPE_FEATURE_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLFrameImpl <em>UML Frame</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLFrameImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLFrame()
+ * @generated
+ */
+ int UML_FRAME = 1;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__EANNOTATIONS = UML_SHAPE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__VISIBLE = UML_SHAPE__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__TYPE = UML_SHAPE__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Mutable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__MUTABLE = UML_SHAPE__MUTABLE;
+
+ /**
+ * The feature id for the '<em><b>Source Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__SOURCE_EDGES = UML_SHAPE__SOURCE_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Target Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__TARGET_EDGES = UML_SHAPE__TARGET_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__PERSISTED_CHILDREN = UML_SHAPE__PERSISTED_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__STYLES = UML_SHAPE__STYLES;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__ELEMENT = UML_SHAPE__ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Diagram</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__DIAGRAM = UML_SHAPE__DIAGRAM;
+
+ /**
+ * The feature id for the '<em><b>Transient Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__TRANSIENT_CHILDREN = UML_SHAPE__TRANSIENT_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Layout Constraint</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__LAYOUT_CONSTRAINT = UML_SHAPE__LAYOUT_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Font Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__FONT_COLOR = UML_SHAPE__FONT_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Font Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__FONT_NAME = UML_SHAPE__FONT_NAME;
+
+ /**
+ * The feature id for the '<em><b>Font Height</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__FONT_HEIGHT = UML_SHAPE__FONT_HEIGHT;
+
+ /**
+ * The feature id for the '<em><b>Bold</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__BOLD = UML_SHAPE__BOLD;
+
+ /**
+ * The feature id for the '<em><b>Italic</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__ITALIC = UML_SHAPE__ITALIC;
+
+ /**
+ * The feature id for the '<em><b>Underline</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__UNDERLINE = UML_SHAPE__UNDERLINE;
+
+ /**
+ * The feature id for the '<em><b>Strike Through</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__STRIKE_THROUGH = UML_SHAPE__STRIKE_THROUGH;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__DESCRIPTION = UML_SHAPE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Fill Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__FILL_COLOR = UML_SHAPE__FILL_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Transparency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__TRANSPARENCY = UML_SHAPE__TRANSPARENCY;
+
+ /**
+ * The feature id for the '<em><b>Gradient</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__GRADIENT = UML_SHAPE__GRADIENT;
+
+ /**
+ * The feature id for the '<em><b>Line Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__LINE_COLOR = UML_SHAPE__LINE_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Line Width</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__LINE_WIDTH = UML_SHAPE__LINE_WIDTH;
+
+ /**
+ * The feature id for the '<em><b>Rounded Bendpoints Radius</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__ROUNDED_BENDPOINTS_RADIUS = UML_SHAPE__ROUNDED_BENDPOINTS_RADIUS;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__SHOW_STEREOTYPE = UML_SHAPE__SHOW_STEREOTYPE;
+
+ /**
+ * The feature id for the '<em><b>Show List Visibility</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__SHOW_LIST_VISIBILITY = UML_SHAPE__SHOW_LIST_VISIBILITY;
+
+ /**
+ * The feature id for the '<em><b>Show List Signature</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__SHOW_LIST_SIGNATURE = UML_SHAPE__SHOW_LIST_SIGNATURE;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__ALIGNMENT = UML_SHAPE__ALIGNMENT;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+
+ /**
+ * The feature id for the '<em><b>Show List Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME__SHOW_LIST_STEREOTYPE = UML_SHAPE__SHOW_LIST_STEREOTYPE;
+
+ /**
+ * The number of structural features of the '<em>UML Frame</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_FRAME_FEATURE_COUNT = UML_SHAPE_FEATURE_COUNT + 0;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl <em>UML Shape Compartment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLShapeCompartment()
+ * @generated
+ */
+ int UML_SHAPE_COMPARTMENT = 2;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__EANNOTATIONS = NotationPackage.COMPARTMENT__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__VISIBLE = NotationPackage.COMPARTMENT__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__TYPE = NotationPackage.COMPARTMENT__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Mutable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__MUTABLE = NotationPackage.COMPARTMENT__MUTABLE;
+
+ /**
+ * The feature id for the '<em><b>Source Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__SOURCE_EDGES = NotationPackage.COMPARTMENT__SOURCE_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Target Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__TARGET_EDGES = NotationPackage.COMPARTMENT__TARGET_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__PERSISTED_CHILDREN = NotationPackage.COMPARTMENT__PERSISTED_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__STYLES = NotationPackage.COMPARTMENT__STYLES;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__ELEMENT = NotationPackage.COMPARTMENT__ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Diagram</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__DIAGRAM = NotationPackage.COMPARTMENT__DIAGRAM;
+
+ /**
+ * The feature id for the '<em><b>Transient Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__TRANSIENT_CHILDREN = NotationPackage.COMPARTMENT__TRANSIENT_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Layout Constraint</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__LAYOUT_CONSTRAINT = NotationPackage.COMPARTMENT__LAYOUT_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Collapsed</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__COLLAPSED = NotationPackage.COMPARTMENT__COLLAPSED;
+
+ /**
+ * The feature id for the '<em><b>Canonical</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__CANONICAL = NotationPackage.COMPARTMENT__CANONICAL;
+
+ /**
+ * The feature id for the '<em><b>Show Title</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__SHOW_TITLE = NotationPackage.COMPARTMENT__SHOW_TITLE;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE = NotationPackage.COMPARTMENT_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Show List Visibility</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__SHOW_LIST_VISIBILITY = NotationPackage.COMPARTMENT_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Show List Signature</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__SHOW_LIST_SIGNATURE = NotationPackage.COMPARTMENT_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__ALIGNMENT = NotationPackage.COMPARTMENT_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = NotationPackage.COMPARTMENT_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Show List Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__SHOW_LIST_STEREOTYPE = NotationPackage.COMPARTMENT_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Vertical Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT__VERTICAL_ALIGNMENT = NotationPackage.COMPARTMENT_FEATURE_COUNT + 6;
+
+ /**
+ * The number of structural features of the '<em>UML Shape Compartment</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_SHAPE_COMPARTMENT_FEATURE_COUNT = NotationPackage.COMPARTMENT_FEATURE_COUNT + 7;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl <em>UML Connector</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLConnector()
+ * @generated
+ */
+ int UML_CONNECTOR = 4;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__EANNOTATIONS = NotationPackage.CONNECTOR__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__VISIBLE = NotationPackage.CONNECTOR__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__TYPE = NotationPackage.CONNECTOR__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Mutable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__MUTABLE = NotationPackage.CONNECTOR__MUTABLE;
+
+ /**
+ * The feature id for the '<em><b>Source Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SOURCE_EDGES = NotationPackage.CONNECTOR__SOURCE_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Target Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__TARGET_EDGES = NotationPackage.CONNECTOR__TARGET_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__PERSISTED_CHILDREN = NotationPackage.CONNECTOR__PERSISTED_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__STYLES = NotationPackage.CONNECTOR__STYLES;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__ELEMENT = NotationPackage.CONNECTOR__ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Diagram</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__DIAGRAM = NotationPackage.CONNECTOR__DIAGRAM;
+
+ /**
+ * The feature id for the '<em><b>Transient Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__TRANSIENT_CHILDREN = NotationPackage.CONNECTOR__TRANSIENT_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Source</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SOURCE = NotationPackage.CONNECTOR__SOURCE;
+
+ /**
+ * The feature id for the '<em><b>Target</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__TARGET = NotationPackage.CONNECTOR__TARGET;
+
+ /**
+ * The feature id for the '<em><b>Bendpoints</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__BENDPOINTS = NotationPackage.CONNECTOR__BENDPOINTS;
+
+ /**
+ * The feature id for the '<em><b>Source Anchor</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SOURCE_ANCHOR = NotationPackage.CONNECTOR__SOURCE_ANCHOR;
+
+ /**
+ * The feature id for the '<em><b>Target Anchor</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__TARGET_ANCHOR = NotationPackage.CONNECTOR__TARGET_ANCHOR;
+
+ /**
+ * The feature id for the '<em><b>Rounded Bendpoints Radius</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__ROUNDED_BENDPOINTS_RADIUS = NotationPackage.CONNECTOR__ROUNDED_BENDPOINTS_RADIUS;
+
+ /**
+ * The feature id for the '<em><b>Routing</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__ROUTING = NotationPackage.CONNECTOR__ROUTING;
+
+ /**
+ * The feature id for the '<em><b>Smoothness</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SMOOTHNESS = NotationPackage.CONNECTOR__SMOOTHNESS;
+
+ /**
+ * The feature id for the '<em><b>Avoid Obstructions</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__AVOID_OBSTRUCTIONS = NotationPackage.CONNECTOR__AVOID_OBSTRUCTIONS;
+
+ /**
+ * The feature id for the '<em><b>Closest Distance</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__CLOSEST_DISTANCE = NotationPackage.CONNECTOR__CLOSEST_DISTANCE;
+
+ /**
+ * The feature id for the '<em><b>Jump Link Status</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__JUMP_LINK_STATUS = NotationPackage.CONNECTOR__JUMP_LINK_STATUS;
+
+ /**
+ * The feature id for the '<em><b>Jump Link Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__JUMP_LINK_TYPE = NotationPackage.CONNECTOR__JUMP_LINK_TYPE;
+
+ /**
+ * The feature id for the '<em><b>Jump Links Reverse</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__JUMP_LINKS_REVERSE = NotationPackage.CONNECTOR__JUMP_LINKS_REVERSE;
+
+ /**
+ * The feature id for the '<em><b>Line Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__LINE_COLOR = NotationPackage.CONNECTOR__LINE_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Line Width</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__LINE_WIDTH = NotationPackage.CONNECTOR__LINE_WIDTH;
+
+ /**
+ * The feature id for the '<em><b>Font Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__FONT_COLOR = NotationPackage.CONNECTOR_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Font Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__FONT_NAME = NotationPackage.CONNECTOR_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Font Height</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__FONT_HEIGHT = NotationPackage.CONNECTOR_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Bold</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__BOLD = NotationPackage.CONNECTOR_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Italic</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__ITALIC = NotationPackage.CONNECTOR_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Underline</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__UNDERLINE = NotationPackage.CONNECTOR_FEATURE_COUNT + 5;
+
+ /**
+ * The feature id for the '<em><b>Strike Through</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__STRIKE_THROUGH = NotationPackage.CONNECTOR_FEATURE_COUNT + 6;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SHOW_STEREOTYPE = NotationPackage.CONNECTOR_FEATURE_COUNT + 7;
+
+ /**
+ * The feature id for the '<em><b>Show List Visibility</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SHOW_LIST_VISIBILITY = NotationPackage.CONNECTOR_FEATURE_COUNT + 8;
+
+ /**
+ * The feature id for the '<em><b>Show List Signature</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SHOW_LIST_SIGNATURE = NotationPackage.CONNECTOR_FEATURE_COUNT + 9;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__ALIGNMENT = NotationPackage.CONNECTOR_FEATURE_COUNT + 10;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = NotationPackage.CONNECTOR_FEATURE_COUNT + 11;
+
+ /**
+ * The feature id for the '<em><b>Show List Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR__SHOW_LIST_STEREOTYPE = NotationPackage.CONNECTOR_FEATURE_COUNT + 12;
+
+ /**
+ * The number of structural features of the '<em>UML Connector</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CONNECTOR_FEATURE_COUNT = NotationPackage.CONNECTOR_FEATURE_COUNT + 13;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl <em>UML View</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLView()
+ * @generated
+ */
+ int UML_VIEW = 5;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__EANNOTATIONS = NotationPackage.VIEW__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__VISIBLE = NotationPackage.VIEW__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__TYPE = NotationPackage.VIEW__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Mutable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__MUTABLE = NotationPackage.VIEW__MUTABLE;
+
+ /**
+ * The feature id for the '<em><b>Source Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__SOURCE_EDGES = NotationPackage.VIEW__SOURCE_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Target Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__TARGET_EDGES = NotationPackage.VIEW__TARGET_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__PERSISTED_CHILDREN = NotationPackage.VIEW__PERSISTED_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__STYLES = NotationPackage.VIEW__STYLES;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__ELEMENT = NotationPackage.VIEW__ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Diagram</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__DIAGRAM = NotationPackage.VIEW__DIAGRAM;
+
+ /**
+ * The feature id for the '<em><b>Transient Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__TRANSIENT_CHILDREN = NotationPackage.VIEW__TRANSIENT_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__SHOW_STEREOTYPE = NotationPackage.VIEW_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Show List Visibility</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__SHOW_LIST_VISIBILITY = NotationPackage.VIEW_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Show List Signature</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__SHOW_LIST_SIGNATURE = NotationPackage.VIEW_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__ALIGNMENT = NotationPackage.VIEW_FEATURE_COUNT + 3;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = NotationPackage.VIEW_FEATURE_COUNT + 4;
+
+ /**
+ * The feature id for the '<em><b>Show List Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW__SHOW_LIST_STEREOTYPE = NotationPackage.VIEW_FEATURE_COUNT + 5;
+
+ /**
+ * The number of structural features of the '<em>UML View</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_VIEW_FEATURE_COUNT = NotationPackage.VIEW_FEATURE_COUNT + 6;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLComponentImpl <em>UML Component</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLComponentImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLComponent()
+ * @generated
+ */
+ int UML_COMPONENT = 6;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__EANNOTATIONS = UML_SHAPE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__VISIBLE = UML_SHAPE__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__TYPE = UML_SHAPE__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Mutable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__MUTABLE = UML_SHAPE__MUTABLE;
+
+ /**
+ * The feature id for the '<em><b>Source Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__SOURCE_EDGES = UML_SHAPE__SOURCE_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Target Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__TARGET_EDGES = UML_SHAPE__TARGET_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__CHILDREN = UML_SHAPE__PERSISTED_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__STYLES = UML_SHAPE__STYLES;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__ELEMENT = UML_SHAPE__ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Diagram</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__DIAGRAM = UML_SHAPE__DIAGRAM;
+
+ /**
+ * The feature id for the '<em><b>Transient Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__TRANSIENT_CHILDREN = UML_SHAPE__TRANSIENT_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Layout Constraint</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__LAYOUT_CONSTRAINT = UML_SHAPE__LAYOUT_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Font Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__FONT_COLOR = UML_SHAPE__FONT_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Font Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__FONT_NAME = UML_SHAPE__FONT_NAME;
+
+ /**
+ * The feature id for the '<em><b>Font Height</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__FONT_HEIGHT = UML_SHAPE__FONT_HEIGHT;
+
+ /**
+ * The feature id for the '<em><b>Bold</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__BOLD = UML_SHAPE__BOLD;
+
+ /**
+ * The feature id for the '<em><b>Italic</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__ITALIC = UML_SHAPE__ITALIC;
+
+ /**
+ * The feature id for the '<em><b>Underline</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__UNDERLINE = UML_SHAPE__UNDERLINE;
+
+ /**
+ * The feature id for the '<em><b>Strike Through</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__STRIKE_THROUGH = UML_SHAPE__STRIKE_THROUGH;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__DESCRIPTION = UML_SHAPE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Fill Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__FILL_COLOR = UML_SHAPE__FILL_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Transparency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__TRANSPARENCY = UML_SHAPE__TRANSPARENCY;
+
+ /**
+ * The feature id for the '<em><b>Gradient</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__GRADIENT = UML_SHAPE__GRADIENT;
+
+ /**
+ * The feature id for the '<em><b>Line Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__LINE_COLOR = UML_SHAPE__LINE_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Line Width</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__LINE_WIDTH = UML_SHAPE__LINE_WIDTH;
+
+ /**
+ * The feature id for the '<em><b>Rounded Bendpoints Radius</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__ROUNDED_BENDPOINTS_RADIUS = UML_SHAPE__ROUNDED_BENDPOINTS_RADIUS;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__SHOW_STEREOTYPE = UML_SHAPE__SHOW_STEREOTYPE;
+
+ /**
+ * The feature id for the '<em><b>Show List Visibility</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__SHOW_LIST_VISIBILITY = UML_SHAPE__SHOW_LIST_VISIBILITY;
+
+ /**
+ * The feature id for the '<em><b>Show List Signature</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__SHOW_LIST_SIGNATURE = UML_SHAPE__SHOW_LIST_SIGNATURE;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__ALIGNMENT = UML_SHAPE__ALIGNMENT;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+
+ /**
+ * The feature id for the '<em><b>Show Whitebox</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT__SHOW_WHITEBOX = UML_SHAPE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>UML Component</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_COMPONENT_FEATURE_COUNT = UML_SHAPE_FEATURE_COUNT + 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLClassifierShapeImpl <em>UML Classifier Shape</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLClassifierShapeImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLClassifierShape()
+ * @generated
+ */
+ int UML_CLASSIFIER_SHAPE = 7;
+
+ /**
+ * The feature id for the '<em><b>EAnnotations</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__EANNOTATIONS = UML_SHAPE__EANNOTATIONS;
+
+ /**
+ * The feature id for the '<em><b>Visible</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__VISIBLE = UML_SHAPE__VISIBLE;
+
+ /**
+ * The feature id for the '<em><b>Type</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__TYPE = UML_SHAPE__TYPE;
+
+ /**
+ * The feature id for the '<em><b>Mutable</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__MUTABLE = UML_SHAPE__MUTABLE;
+
+ /**
+ * The feature id for the '<em><b>Source Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__SOURCE_EDGES = UML_SHAPE__SOURCE_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Target Edges</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__TARGET_EDGES = UML_SHAPE__TARGET_EDGES;
+
+ /**
+ * The feature id for the '<em><b>Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__CHILDREN = UML_SHAPE__PERSISTED_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Styles</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__STYLES = UML_SHAPE__STYLES;
+
+ /**
+ * The feature id for the '<em><b>Element</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__ELEMENT = UML_SHAPE__ELEMENT;
+
+ /**
+ * The feature id for the '<em><b>Diagram</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__DIAGRAM = UML_SHAPE__DIAGRAM;
+
+ /**
+ * The feature id for the '<em><b>Transient Children</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__TRANSIENT_CHILDREN = UML_SHAPE__TRANSIENT_CHILDREN;
+
+ /**
+ * The feature id for the '<em><b>Layout Constraint</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__LAYOUT_CONSTRAINT = UML_SHAPE__LAYOUT_CONSTRAINT;
+
+ /**
+ * The feature id for the '<em><b>Font Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__FONT_COLOR = UML_SHAPE__FONT_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Font Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__FONT_NAME = UML_SHAPE__FONT_NAME;
+
+ /**
+ * The feature id for the '<em><b>Font Height</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__FONT_HEIGHT = UML_SHAPE__FONT_HEIGHT;
+
+ /**
+ * The feature id for the '<em><b>Bold</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__BOLD = UML_SHAPE__BOLD;
+
+ /**
+ * The feature id for the '<em><b>Italic</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__ITALIC = UML_SHAPE__ITALIC;
+
+ /**
+ * The feature id for the '<em><b>Underline</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__UNDERLINE = UML_SHAPE__UNDERLINE;
+
+ /**
+ * The feature id for the '<em><b>Strike Through</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__STRIKE_THROUGH = UML_SHAPE__STRIKE_THROUGH;
+
+ /**
+ * The feature id for the '<em><b>Description</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__DESCRIPTION = UML_SHAPE__DESCRIPTION;
+
+ /**
+ * The feature id for the '<em><b>Fill Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__FILL_COLOR = UML_SHAPE__FILL_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Transparency</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__TRANSPARENCY = UML_SHAPE__TRANSPARENCY;
+
+ /**
+ * The feature id for the '<em><b>Gradient</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__GRADIENT = UML_SHAPE__GRADIENT;
+
+ /**
+ * The feature id for the '<em><b>Line Color</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__LINE_COLOR = UML_SHAPE__LINE_COLOR;
+
+ /**
+ * The feature id for the '<em><b>Line Width</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__LINE_WIDTH = UML_SHAPE__LINE_WIDTH;
+
+ /**
+ * The feature id for the '<em><b>Rounded Bendpoints Radius</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__ROUNDED_BENDPOINTS_RADIUS = UML_SHAPE__ROUNDED_BENDPOINTS_RADIUS;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__SHOW_STEREOTYPE = UML_SHAPE__SHOW_STEREOTYPE;
+
+ /**
+ * The feature id for the '<em><b>Show List Visibility</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__SHOW_LIST_VISIBILITY = UML_SHAPE__SHOW_LIST_VISIBILITY;
+
+ /**
+ * The feature id for the '<em><b>Show List Signature</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__SHOW_LIST_SIGNATURE = UML_SHAPE__SHOW_LIST_SIGNATURE;
+
+ /**
+ * The feature id for the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__ALIGNMENT = UML_SHAPE__ALIGNMENT;
+
+ /**
+ * The feature id for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+
+ /**
+ * The feature id for the '<em><b>Show List Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__SHOW_LIST_STEREOTYPE = UML_SHAPE__SHOW_LIST_STEREOTYPE;
+
+ /**
+ * The feature id for the '<em><b>Use Classifier Shape</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE__USE_CLASSIFIER_SHAPE = UML_SHAPE_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>UML Classifier Shape</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int UML_CLASSIFIER_SHAPE_FEATURE_COUNT = UML_SHAPE_FEATURE_COUNT + 1;
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram <em>UML Diagram</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>UML Diagram</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram
+ * @generated
+ */
+ EClass getUMLDiagram();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame <em>UML Frame</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>UML Frame</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame
+ * @generated
+ */
+ EClass getUMLFrame();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment <em>UML Shape Compartment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>UML Shape Compartment</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment
+ * @generated
+ */
+ EClass getUMLShapeCompartment();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment#isVerticalAlignment <em>Vertical Alignment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Vertical Alignment</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment#isVerticalAlignment()
+ * @see #getUMLShapeCompartment()
+ * @generated
+ */
+ EAttribute getUMLShapeCompartment_VerticalAlignment();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape <em>UML Shape</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>UML Shape</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape
+ * @generated
+ */
+ EClass getUMLShape();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector <em>UML Connector</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>UML Connector</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector
+ * @generated
+ */
+ EClass getUMLConnector();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView <em>UML View</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>UML View</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView
+ * @generated
+ */
+ EClass getUMLView();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowStereotype <em>Show Stereotype</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Show Stereotype</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowStereotype()
+ * @see #getUMLView()
+ * @generated
+ */
+ EAttribute getUMLView_ShowStereotype();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowListVisibility <em>Show List Visibility</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Show List Visibility</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowListVisibility()
+ * @see #getUMLView()
+ * @generated
+ */
+ EAttribute getUMLView_ShowListVisibility();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#isShowListSignature <em>Show List Signature</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Show List Signature</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#isShowListSignature()
+ * @see #getUMLView()
+ * @generated
+ */
+ EAttribute getUMLView_ShowListSignature();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getAlignment <em>Alignment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Alignment</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getAlignment()
+ * @see #getUMLView()
+ * @generated
+ */
+ EAttribute getUMLView_Alignment();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowStereotypeAttributeCompartment <em>Show Stereotype Attribute Compartment</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Show Stereotype Attribute Compartment</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowStereotypeAttributeCompartment()
+ * @see #getUMLView()
+ * @generated
+ */
+ EAttribute getUMLView_ShowStereotypeAttributeCompartment();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowListStereotype <em>Show List Stereotype</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Show List Stereotype</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowListStereotype()
+ * @see #getUMLView()
+ * @generated
+ */
+ EAttribute getUMLView_ShowListStereotype();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent <em>UML Component</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>UML Component</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent
+ * @generated
+ */
+ EClass getUMLComponent();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent#isShowWhitebox <em>Show Whitebox</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Show Whitebox</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent#isShowWhitebox()
+ * @see #getUMLComponent()
+ * @generated
+ */
+ EAttribute getUMLComponent_ShowWhitebox();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape <em>UML Classifier Shape</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>UML Classifier Shape</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape
+ * @generated
+ */
+ EClass getUMLClassifierShape();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape#isUseClassifierShape <em>Use Classifier Shape</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Use Classifier Shape</em>'.
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape#isUseClassifierShape()
+ * @see #getUMLClassifierShape()
+ * @generated
+ */
+ EAttribute getUMLClassifierShape_UseClassifierShape();
+
+ /**
+ * 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
+ */
+ PapyrusUMLNotationFactory getPapyrusUMLNotationFactory();
+
+ /**
+ * <!-- 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 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.interoperability.rsa.umlnotation.impl.UMLDiagramImpl <em>UML Diagram</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLDiagram()
+ * @generated
+ */
+ EClass UML_DIAGRAM = eINSTANCE.getUMLDiagram();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLFrameImpl <em>UML Frame</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLFrameImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLFrame()
+ * @generated
+ */
+ EClass UML_FRAME = eINSTANCE.getUMLFrame();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl <em>UML Shape Compartment</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLShapeCompartment()
+ * @generated
+ */
+ EClass UML_SHAPE_COMPARTMENT = eINSTANCE.getUMLShapeCompartment();
+
+ /**
+ * The meta object literal for the '<em><b>Vertical Alignment</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_SHAPE_COMPARTMENT__VERTICAL_ALIGNMENT = eINSTANCE.getUMLShapeCompartment_VerticalAlignment();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl <em>UML Shape</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLShape()
+ * @generated
+ */
+ EClass UML_SHAPE = eINSTANCE.getUMLShape();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl <em>UML Connector</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLConnector()
+ * @generated
+ */
+ EClass UML_CONNECTOR = eINSTANCE.getUMLConnector();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl <em>UML View</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLView()
+ * @generated
+ */
+ EClass UML_VIEW = eINSTANCE.getUMLView();
+
+ /**
+ * The meta object literal for the '<em><b>Show Stereotype</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_VIEW__SHOW_STEREOTYPE = eINSTANCE.getUMLView_ShowStereotype();
+
+ /**
+ * The meta object literal for the '<em><b>Show List Visibility</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_VIEW__SHOW_LIST_VISIBILITY = eINSTANCE.getUMLView_ShowListVisibility();
+
+ /**
+ * The meta object literal for the '<em><b>Show List Signature</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_VIEW__SHOW_LIST_SIGNATURE = eINSTANCE.getUMLView_ShowListSignature();
+
+ /**
+ * The meta object literal for the '<em><b>Alignment</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_VIEW__ALIGNMENT = eINSTANCE.getUMLView_Alignment();
+
+ /**
+ * The meta object literal for the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT = eINSTANCE.getUMLView_ShowStereotypeAttributeCompartment();
+
+ /**
+ * The meta object literal for the '<em><b>Show List Stereotype</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_VIEW__SHOW_LIST_STEREOTYPE = eINSTANCE.getUMLView_ShowListStereotype();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLComponentImpl <em>UML Component</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLComponentImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLComponent()
+ * @generated
+ */
+ EClass UML_COMPONENT = eINSTANCE.getUMLComponent();
+
+ /**
+ * The meta object literal for the '<em><b>Show Whitebox</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_COMPONENT__SHOW_WHITEBOX = eINSTANCE.getUMLComponent_ShowWhitebox();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLClassifierShapeImpl <em>UML Classifier Shape</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLClassifierShapeImpl
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.PapyrusUMLNotationPackageImpl#getUMLClassifierShape()
+ * @generated
+ */
+ EClass UML_CLASSIFIER_SHAPE = eINSTANCE.getUMLClassifierShape();
+
+ /**
+ * The meta object literal for the '<em><b>Use Classifier Shape</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute UML_CLASSIFIER_SHAPE__USE_CLASSIFIER_SHAPE = eINSTANCE.getUMLClassifierShape_UseClassifierShape();
+
+ }
+
+} // PapyrusUMLNotationPackage
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLClassifierShape.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLClassifierShape.java
new file mode 100644
index 0000000..d80fddf
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLClassifierShape.java
@@ -0,0 +1,60 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>UML Classifier Shape</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape#isUseClassifierShape <em>Use Classifier Shape</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLClassifierShape()
+ * @model
+ * @generated
+ */
+public interface UMLClassifierShape extends UMLShape {
+ /**
+ * Returns the value of the '<em><b>Use Classifier Shape</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Use Classifier Shape</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Use Classifier Shape</em>' attribute.
+ * @see #setUseClassifierShape(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLClassifierShape_UseClassifierShape()
+ * @model
+ * @generated
+ */
+ boolean isUseClassifierShape();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape#isUseClassifierShape <em>Use Classifier Shape</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Use Classifier Shape</em>' attribute.
+ * @see #isUseClassifierShape()
+ * @generated
+ */
+ void setUseClassifierShape(boolean value);
+
+} // UMLClassifierShape
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLComponent.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLComponent.java
new file mode 100644
index 0000000..b645f7c
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLComponent.java
@@ -0,0 +1,60 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>UML Component</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent#isShowWhitebox <em>Show Whitebox</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLComponent()
+ * @model
+ * @generated
+ */
+public interface UMLComponent extends UMLShape {
+
+ /**
+ * Returns the value of the '<em><b>Show Whitebox</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Show Whitebox</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Show Whitebox</em>' attribute.
+ * @see #setShowWhitebox(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLComponent_ShowWhitebox()
+ * @model
+ * @generated
+ */
+ boolean isShowWhitebox();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent#isShowWhitebox <em>Show Whitebox</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Show Whitebox</em>' attribute.
+ * @see #isShowWhitebox()
+ * @generated
+ */
+ void setShowWhitebox(boolean value);
+} // UMLComponent
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLConnector.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLConnector.java
new file mode 100644
index 0000000..77e2210
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLConnector.java
@@ -0,0 +1,28 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+import org.eclipse.gmf.runtime.notation.Connector;
+import org.eclipse.gmf.runtime.notation.FontStyle;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>UML Connector</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLConnector()
+ * @model
+ * @generated
+ */
+public interface UMLConnector extends Connector, FontStyle, UMLView {
+} // UMLConnector
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLDiagram.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLDiagram.java
new file mode 100644
index 0000000..c28bfa2
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLDiagram.java
@@ -0,0 +1,27 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+import org.eclipse.gmf.runtime.notation.Diagram;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>UML Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLDiagram()
+ * @model
+ * @generated
+ */
+public interface UMLDiagram extends Diagram, UMLView {
+} // UMLDiagram
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLFrame.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLFrame.java
new file mode 100644
index 0000000..3713ec4
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLFrame.java
@@ -0,0 +1,26 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>UML Frame</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLFrame()
+ * @model
+ * @generated
+ */
+public interface UMLFrame extends UMLShape {
+} // UMLFrame
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLShape.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLShape.java
new file mode 100644
index 0000000..be0ed61
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLShape.java
@@ -0,0 +1,27 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+import org.eclipse.gmf.runtime.notation.Shape;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>UML Shape</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLShape()
+ * @model
+ * @generated
+ */
+public interface UMLShape extends Shape, UMLView {
+} // UMLShape
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLShapeCompartment.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLShapeCompartment.java
new file mode 100644
index 0000000..65dd159
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLShapeCompartment.java
@@ -0,0 +1,62 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+import org.eclipse.gmf.runtime.notation.Compartment;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>UML Shape Compartment</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment#isVerticalAlignment <em>Vertical Alignment</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLShapeCompartment()
+ * @model
+ * @generated
+ */
+public interface UMLShapeCompartment extends Compartment, UMLView {
+
+ /**
+ * Returns the value of the '<em><b>Vertical Alignment</b></em>' attribute.
+ * The default value is <code>"true"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Vertical Alignment</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Vertical Alignment</em>' attribute.
+ * @see #setVerticalAlignment(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLShapeCompartment_VerticalAlignment()
+ * @model default="true"
+ * @generated
+ */
+ boolean isVerticalAlignment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment#isVerticalAlignment <em>Vertical Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Vertical Alignment</em>' attribute.
+ * @see #isVerticalAlignment()
+ * @generated
+ */
+ void setVerticalAlignment(boolean value);
+} // UMLShapeCompartment
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLView.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLView.java
new file mode 100644
index 0000000..92aed7a
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/UMLView.java
@@ -0,0 +1,210 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.notation.View;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>UML View</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowStereotype <em>Show Stereotype</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowListVisibility <em>Show List Visibility</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#isShowListSignature <em>Show List Signature</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getAlignment <em>Alignment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowStereotypeAttributeCompartment <em>Show Stereotype Attribute Compartment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowListStereotype <em>Show List Stereotype</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLView()
+ * @model abstract="true"
+ * @generated
+ */
+public interface UMLView extends EObject, View {
+ /**
+ * Returns the value of the '<em><b>Show Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Show Stereotype</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Show Stereotype</em>' attribute.
+ * @see #setShowStereotype(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLView_ShowStereotype()
+ * @model
+ * @generated
+ */
+ String getShowStereotype();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowStereotype <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Show Stereotype</em>' attribute.
+ * @see #getShowStereotype()
+ * @generated
+ */
+ void setShowStereotype(String value);
+
+ /**
+ * Returns the value of the '<em><b>Show List Visibility</b></em>' attribute.
+ * The default value is <code>"None"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Show List Visibility</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Show List Visibility</em>' attribute.
+ * @see #setShowListVisibility(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLView_ShowListVisibility()
+ * @model default="None"
+ * @generated
+ */
+ String getShowListVisibility();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowListVisibility <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Show List Visibility</em>' attribute.
+ * @see #getShowListVisibility()
+ * @generated
+ */
+ void setShowListVisibility(String value);
+
+ /**
+ * Returns the value of the '<em><b>Show List Signature</b></em>' attribute.
+ * The default value is <code>"true"</code>.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Show List Signature</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Show List Signature</em>' attribute.
+ * @see #setShowListSignature(boolean)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLView_ShowListSignature()
+ * @model default="true"
+ * @generated
+ */
+ boolean isShowListSignature();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#isShowListSignature <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Show List Signature</em>' attribute.
+ * @see #isShowListSignature()
+ * @generated
+ */
+ void setShowListSignature(boolean value);
+
+ /**
+ * Returns the value of the '<em><b>Alignment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Alignment</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Alignment</em>' attribute.
+ * @see #setAlignment(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLView_Alignment()
+ * @model
+ * @generated
+ */
+ String getAlignment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getAlignment <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Alignment</em>' attribute.
+ * @see #getAlignment()
+ * @generated
+ */
+ void setAlignment(String value);
+
+ /**
+ * Returns the value of the '<em><b>Show Stereotype Attribute Compartment</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Show Stereotype Attribute Compartment</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Show Stereotype Attribute Compartment</em>' attribute.
+ * @see #setShowStereotypeAttributeCompartment(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLView_ShowStereotypeAttributeCompartment()
+ * @model
+ * @generated
+ */
+ String getShowStereotypeAttributeCompartment();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowStereotypeAttributeCompartment <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Show Stereotype Attribute Compartment</em>' attribute.
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ */
+ void setShowStereotypeAttributeCompartment(String value);
+
+ /**
+ * Returns the value of the '<em><b>Show List Stereotype</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Show List Stereotype</em>' attribute isn't clear,
+ * there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Show List Stereotype</em>' attribute.
+ * @see #setShowListStereotype(String)
+ * @see org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#getUMLView_ShowListStereotype()
+ * @model
+ * @generated
+ */
+ String getShowListStereotype();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView#getShowListStereotype <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Show List Stereotype</em>' attribute.
+ * @see #getShowListStereotype()
+ * @generated
+ */
+ void setShowListStereotype(String value);
+
+} // UMLView
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/PapyrusUMLNotationFactoryImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/PapyrusUMLNotationFactoryImpl.java
new file mode 100644
index 0000000..25a9c98
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/PapyrusUMLNotationFactoryImpl.java
@@ -0,0 +1,202 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.impl;
+
+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;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationFactory;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class PapyrusUMLNotationFactoryImpl extends EFactoryImpl implements PapyrusUMLNotationFactory {
+ /**
+ * Creates the default factory implementation.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public static PapyrusUMLNotationFactory init() {
+ try {
+ PapyrusUMLNotationFactory thePapyrusUMLNotationFactory = (PapyrusUMLNotationFactory) EPackage.Registry.INSTANCE.getEFactory(PapyrusUMLNotationPackage.eNS_URI);
+ if (thePapyrusUMLNotationFactory != null) {
+ return thePapyrusUMLNotationFactory;
+ }
+ } catch (Exception exception) {
+ EcorePlugin.INSTANCE.log(exception);
+ }
+ return new PapyrusUMLNotationFactoryImpl();
+ }
+
+ /**
+ * Creates an instance of the factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public PapyrusUMLNotationFactoryImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EObject create(EClass eClass) {
+ switch (eClass.getClassifierID()) {
+ case PapyrusUMLNotationPackage.UML_DIAGRAM:
+ return createUMLDiagram();
+ case PapyrusUMLNotationPackage.UML_FRAME:
+ return createUMLFrame();
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT:
+ return createUMLShapeCompartment();
+ case PapyrusUMLNotationPackage.UML_SHAPE:
+ return createUMLShape();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR:
+ return createUMLConnector();
+ case PapyrusUMLNotationPackage.UML_COMPONENT:
+ return createUMLComponent();
+ case PapyrusUMLNotationPackage.UML_CLASSIFIER_SHAPE:
+ return createUMLClassifierShape();
+ default:
+ throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public UMLDiagram createUMLDiagram() {
+ UMLDiagramImpl umlDiagram = new UMLDiagramImpl();
+ return umlDiagram;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public UMLFrame createUMLFrame() {
+ UMLFrameImpl umlFrame = new UMLFrameImpl();
+ return umlFrame;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public UMLShapeCompartment createUMLShapeCompartment() {
+ UMLShapeCompartmentImpl umlShapeCompartment = new UMLShapeCompartmentImpl();
+ return umlShapeCompartment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public UMLShape createUMLShape() {
+ UMLShapeImpl umlShape = new UMLShapeImpl();
+ return umlShape;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public UMLConnector createUMLConnector() {
+ UMLConnectorImpl umlConnector = new UMLConnectorImpl();
+ return umlConnector;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public UMLComponent createUMLComponent() {
+ UMLComponentImpl umlComponent = new UMLComponentImpl();
+ return umlComponent;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public UMLClassifierShape createUMLClassifierShape() {
+ UMLClassifierShapeImpl umlClassifierShape = new UMLClassifierShapeImpl();
+ return umlClassifierShape;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public PapyrusUMLNotationPackage getPapyrusUMLNotationPackage() {
+ return (PapyrusUMLNotationPackage) getEPackage();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @deprecated
+ * @generated
+ */
+ @Deprecated
+ public static PapyrusUMLNotationPackage getPackage() {
+ return PapyrusUMLNotationPackage.eINSTANCE;
+ }
+
+} // PapyrusUMLNotationFactoryImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/PapyrusUMLNotationPackageImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/PapyrusUMLNotationPackageImpl.java
new file mode 100644
index 0000000..914ef84
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/PapyrusUMLNotationPackageImpl.java
@@ -0,0 +1,506 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.impl.NotationPackageImpl;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationFactory;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class PapyrusUMLNotationPackageImpl extends EPackageImpl implements PapyrusUMLNotationPackage {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass umlDiagramEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass umlFrameEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass umlShapeCompartmentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass umlShapeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass umlConnectorEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass umlViewEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass umlComponentEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass umlClassifierShapeEClass = 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.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage#eNS_URI
+ * @see #init()
+ * @generated
+ */
+ private PapyrusUMLNotationPackageImpl() {
+ super(eNS_URI, PapyrusUMLNotationFactory.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 PapyrusUMLNotationPackage#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 PapyrusUMLNotationPackage init() {
+ if (isInited) {
+ return (PapyrusUMLNotationPackage) EPackage.Registry.INSTANCE.getEPackage(PapyrusUMLNotationPackage.eNS_URI);
+ }
+
+ // Obtain or create and register package
+ PapyrusUMLNotationPackageImpl thePapyrusUMLNotationPackage = (PapyrusUMLNotationPackageImpl) (EPackage.Registry.INSTANCE.get(eNS_URI) instanceof PapyrusUMLNotationPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI)
+ : new PapyrusUMLNotationPackageImpl());
+
+ isInited = true;
+
+ // Obtain or create and register interdependencies
+ NotationPackageImpl theNotationPackage = (NotationPackageImpl) (EPackage.Registry.INSTANCE.getEPackage(NotationPackage.eNS_URI) instanceof NotationPackageImpl
+ ? EPackage.Registry.INSTANCE.getEPackage(NotationPackage.eNS_URI) : NotationPackage.eINSTANCE);
+
+ // Create package meta-data objects
+ thePapyrusUMLNotationPackage.createPackageContents();
+ theNotationPackage.createPackageContents();
+
+ // Initialize created meta-data
+ thePapyrusUMLNotationPackage.initializePackageContents();
+ theNotationPackage.initializePackageContents();
+
+ // Mark meta-data to indicate it can't be changed
+ thePapyrusUMLNotationPackage.freeze();
+
+
+ // Update the registry and return the package
+ EPackage.Registry.INSTANCE.put(PapyrusUMLNotationPackage.eNS_URI, thePapyrusUMLNotationPackage);
+ return thePapyrusUMLNotationPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getUMLDiagram() {
+ return umlDiagramEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getUMLFrame() {
+ return umlFrameEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getUMLShapeCompartment() {
+ return umlShapeCompartmentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLShapeCompartment_VerticalAlignment() {
+ return (EAttribute) umlShapeCompartmentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getUMLShape() {
+ return umlShapeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getUMLConnector() {
+ return umlConnectorEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getUMLView() {
+ return umlViewEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLView_ShowStereotype() {
+ return (EAttribute) umlViewEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLView_ShowListVisibility() {
+ return (EAttribute) umlViewEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLView_ShowListSignature() {
+ return (EAttribute) umlViewEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLView_Alignment() {
+ return (EAttribute) umlViewEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLView_ShowStereotypeAttributeCompartment() {
+ return (EAttribute) umlViewEClass.getEStructuralFeatures().get(4);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLView_ShowListStereotype() {
+ return (EAttribute) umlViewEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getUMLComponent() {
+ return umlComponentEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLComponent_ShowWhitebox() {
+ return (EAttribute) umlComponentEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EClass getUMLClassifierShape() {
+ return umlClassifierShapeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public EAttribute getUMLClassifierShape_UseClassifierShape() {
+ return (EAttribute) umlClassifierShapeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public PapyrusUMLNotationFactory getPapyrusUMLNotationFactory() {
+ return (PapyrusUMLNotationFactory) 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
+ umlDiagramEClass = createEClass(UML_DIAGRAM);
+
+ umlFrameEClass = createEClass(UML_FRAME);
+
+ umlShapeCompartmentEClass = createEClass(UML_SHAPE_COMPARTMENT);
+ createEAttribute(umlShapeCompartmentEClass, UML_SHAPE_COMPARTMENT__VERTICAL_ALIGNMENT);
+
+ umlShapeEClass = createEClass(UML_SHAPE);
+
+ umlConnectorEClass = createEClass(UML_CONNECTOR);
+
+ umlViewEClass = createEClass(UML_VIEW);
+ createEAttribute(umlViewEClass, UML_VIEW__SHOW_STEREOTYPE);
+ createEAttribute(umlViewEClass, UML_VIEW__SHOW_LIST_VISIBILITY);
+ createEAttribute(umlViewEClass, UML_VIEW__SHOW_LIST_SIGNATURE);
+ createEAttribute(umlViewEClass, UML_VIEW__ALIGNMENT);
+ createEAttribute(umlViewEClass, UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT);
+ createEAttribute(umlViewEClass, UML_VIEW__SHOW_LIST_STEREOTYPE);
+
+ umlComponentEClass = createEClass(UML_COMPONENT);
+ createEAttribute(umlComponentEClass, UML_COMPONENT__SHOW_WHITEBOX);
+
+ umlClassifierShapeEClass = createEClass(UML_CLASSIFIER_SHAPE);
+ createEAttribute(umlClassifierShapeEClass, UML_CLASSIFIER_SHAPE__USE_CLASSIFIER_SHAPE);
+ }
+
+ /**
+ * <!-- 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
+ NotationPackage theNotationPackage = (NotationPackage) EPackage.Registry.INSTANCE.getEPackage(NotationPackage.eNS_URI);
+
+ // Create type parameters
+
+ // Set bounds for type parameters
+
+ // Add supertypes to classes
+ umlDiagramEClass.getESuperTypes().add(theNotationPackage.getDiagram());
+ umlDiagramEClass.getESuperTypes().add(this.getUMLView());
+ umlFrameEClass.getESuperTypes().add(this.getUMLShape());
+ umlShapeCompartmentEClass.getESuperTypes().add(theNotationPackage.getCompartment());
+ umlShapeCompartmentEClass.getESuperTypes().add(this.getUMLView());
+ umlShapeEClass.getESuperTypes().add(theNotationPackage.getShape());
+ umlShapeEClass.getESuperTypes().add(this.getUMLView());
+ umlConnectorEClass.getESuperTypes().add(theNotationPackage.getConnector());
+ umlConnectorEClass.getESuperTypes().add(theNotationPackage.getFontStyle());
+ umlConnectorEClass.getESuperTypes().add(this.getUMLView());
+ umlViewEClass.getESuperTypes().add(theNotationPackage.getView());
+ umlComponentEClass.getESuperTypes().add(this.getUMLShape());
+ umlClassifierShapeEClass.getESuperTypes().add(this.getUMLShape());
+
+ // Initialize classes, features, and operations; add parameters
+ initEClass(umlDiagramEClass, UMLDiagram.class, "UMLDiagram", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(umlFrameEClass, UMLFrame.class, "UMLFrame", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(umlShapeCompartmentEClass, UMLShapeCompartment.class, "UMLShapeCompartment", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getUMLShapeCompartment_VerticalAlignment(), ecorePackage.getEBoolean(), "verticalAlignment", "true", 0, 1, UMLShapeCompartment.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+ IS_ORDERED);
+
+ initEClass(umlShapeEClass, UMLShape.class, "UMLShape", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(umlConnectorEClass, UMLConnector.class, "UMLConnector", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+ initEClass(umlViewEClass, UMLView.class, "UMLView", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getUMLView_ShowStereotype(), ecorePackage.getEString(), "showStereotype", null, 0, 1, UMLView.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getUMLView_ShowListVisibility(), ecorePackage.getEString(), "showListVisibility", "None", 0, 1, UMLView.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getUMLView_ShowListSignature(), ecorePackage.getEBoolean(), "showListSignature", "true", 0, 1, UMLView.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getUMLView_Alignment(), ecorePackage.getEString(), "alignment", null, 0, 1, UMLView.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getUMLView_ShowStereotypeAttributeCompartment(), ecorePackage.getEString(), "showStereotypeAttributeCompartment", null, 0, 1, UMLView.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
+ IS_ORDERED);
+ initEAttribute(getUMLView_ShowListStereotype(), ecorePackage.getEString(), "showListStereotype", null, 0, 1, UMLView.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(umlComponentEClass, UMLComponent.class, "UMLComponent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getUMLComponent_ShowWhitebox(), ecorePackage.getEBoolean(), "showWhitebox", null, 0, 1, UMLComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(umlClassifierShapeEClass, UMLClassifierShape.class, "UMLClassifierShape", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getUMLClassifierShape_UseClassifierShape(), ecorePackage.getEBoolean(), "useClassifierShape", null, 0, 1, UMLClassifierShape.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ // Create resource
+ createResource(eNS_URI);
+ }
+
+} // PapyrusUMLNotationPackageImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLClassifierShapeImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLClassifierShapeImpl.java
new file mode 100644
index 0000000..3e21ef7
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLClassifierShapeImpl.java
@@ -0,0 +1,185 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.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.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>UML Classifier Shape</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLClassifierShapeImpl#isUseClassifierShape <em>Use Classifier Shape</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class UMLClassifierShapeImpl extends UMLShapeImpl implements UMLClassifierShape {
+
+ /**
+ * The default value of the '{@link #isUseClassifierShape() <em>Use Classifier Shape</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isUseClassifierShape()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean USE_CLASSIFIER_SHAPE_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isUseClassifierShape() <em>Use Classifier Shape</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isUseClassifierShape()
+ * @generated
+ * @ordered
+ */
+ protected boolean useClassifierShape = USE_CLASSIFIER_SHAPE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UMLClassifierShapeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PapyrusUMLNotationPackage.Literals.UML_CLASSIFIER_SHAPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isUseClassifierShape() {
+ return useClassifierShape;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setUseClassifierShape(boolean newUseClassifierShape) {
+ boolean oldUseClassifierShape = useClassifierShape;
+ useClassifierShape = newUseClassifierShape;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CLASSIFIER_SHAPE__USE_CLASSIFIER_SHAPE, oldUseClassifierShape, useClassifierShape));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_CLASSIFIER_SHAPE__USE_CLASSIFIER_SHAPE:
+ return isUseClassifierShape();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_CLASSIFIER_SHAPE__USE_CLASSIFIER_SHAPE:
+ setUseClassifierShape((Boolean) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_CLASSIFIER_SHAPE__USE_CLASSIFIER_SHAPE:
+ setUseClassifierShape(USE_CLASSIFIER_SHAPE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_CLASSIFIER_SHAPE__USE_CLASSIFIER_SHAPE:
+ return useClassifierShape != USE_CLASSIFIER_SHAPE_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (useClassifierShape: ");
+ result.append(useClassifierShape);
+ result.append(')');
+ return result.toString();
+ }
+
+} // UMLClassifierShapeImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLComponentImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLComponentImpl.java
new file mode 100644
index 0000000..320fab2
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLComponentImpl.java
@@ -0,0 +1,184 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.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.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>UML Component</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLComponentImpl#isShowWhitebox <em>Show Whitebox</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class UMLComponentImpl extends UMLShapeImpl implements UMLComponent {
+
+ /**
+ * The default value of the '{@link #isShowWhitebox() <em>Show Whitebox</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowWhitebox()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean SHOW_WHITEBOX_EDEFAULT = false;
+ /**
+ * The cached value of the '{@link #isShowWhitebox() <em>Show Whitebox</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowWhitebox()
+ * @generated
+ * @ordered
+ */
+ protected boolean showWhitebox = SHOW_WHITEBOX_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UMLComponentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PapyrusUMLNotationPackage.Literals.UML_COMPONENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isShowWhitebox() {
+ return showWhitebox;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowWhitebox(boolean newShowWhitebox) {
+ boolean oldShowWhitebox = showWhitebox;
+ showWhitebox = newShowWhitebox;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_COMPONENT__SHOW_WHITEBOX, oldShowWhitebox, showWhitebox));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_COMPONENT__SHOW_WHITEBOX:
+ return isShowWhitebox();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_COMPONENT__SHOW_WHITEBOX:
+ setShowWhitebox((Boolean) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_COMPONENT__SHOW_WHITEBOX:
+ setShowWhitebox(SHOW_WHITEBOX_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_COMPONENT__SHOW_WHITEBOX:
+ return showWhitebox != SHOW_WHITEBOX_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (showWhitebox: ");
+ result.append(showWhitebox);
+ result.append(')');
+ return result.toString();
+ }
+
+} // UMLComponentImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLConnectorImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLConnectorImpl.java
new file mode 100644
index 0000000..507d581
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLConnectorImpl.java
@@ -0,0 +1,1019 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.gmf.runtime.notation.FontStyle;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.impl.ConnectorImpl;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>UML Connector</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#getFontColor <em>Font Color</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#getFontName <em>Font Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#getFontHeight <em>Font Height</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#isBold <em>Bold</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#isItalic <em>Italic</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#isUnderline <em>Underline</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#isStrikeThrough <em>Strike Through</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#getShowStereotype <em>Show Stereotype</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#getShowListVisibility <em>Show List Visibility</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#isShowListSignature <em>Show List Signature</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#getAlignment <em>Alignment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#getShowStereotypeAttributeCompartment <em>Show Stereotype Attribute Compartment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLConnectorImpl#getShowListStereotype <em>Show List Stereotype</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class UMLConnectorImpl extends ConnectorImpl implements UMLConnector {
+
+ /**
+ * The default value of the '{@link #getFontColor() <em>Font Color</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getFontColor()
+ * @generated
+ * @ordered
+ */
+ protected static final int FONT_COLOR_EDEFAULT = 0;
+
+ /**
+ * The cached value of the '{@link #getFontColor() <em>Font Color</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getFontColor()
+ * @generated
+ * @ordered
+ */
+ protected int fontColor = FONT_COLOR_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getFontName() <em>Font Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getFontName()
+ * @generated
+ * @ordered
+ */
+ protected static final String FONT_NAME_EDEFAULT = "Tahoma";
+
+ /**
+ * The cached value of the '{@link #getFontName() <em>Font Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getFontName()
+ * @generated
+ * @ordered
+ */
+ protected String fontName = FONT_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getFontHeight() <em>Font Height</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getFontHeight()
+ * @generated
+ * @ordered
+ */
+ protected static final int FONT_HEIGHT_EDEFAULT = 9;
+
+ /**
+ * The cached value of the '{@link #getFontHeight() <em>Font Height</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getFontHeight()
+ * @generated
+ * @ordered
+ */
+ protected int fontHeight = FONT_HEIGHT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isBold() <em>Bold</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isBold()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean BOLD_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isBold() <em>Bold</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isBold()
+ * @generated
+ * @ordered
+ */
+ protected boolean bold = BOLD_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isItalic() <em>Italic</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isItalic()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean ITALIC_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isItalic() <em>Italic</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isItalic()
+ * @generated
+ * @ordered
+ */
+ protected boolean italic = ITALIC_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isUnderline() <em>Underline</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isUnderline()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean UNDERLINE_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isUnderline() <em>Underline</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isUnderline()
+ * @generated
+ * @ordered
+ */
+ protected boolean underline = UNDERLINE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isStrikeThrough() <em>Strike Through</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isStrikeThrough()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean STRIKE_THROUGH_EDEFAULT = false;
+
+ /**
+ * The cached value of the '{@link #isStrikeThrough() <em>Strike Through</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isStrikeThrough()
+ * @generated
+ * @ordered
+ */
+ protected boolean strikeThrough = STRIKE_THROUGH_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotype = SHOW_STEREOTYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_VISIBILITY_EDEFAULT = "None";
+
+ /**
+ * The cached value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected String showListVisibility = SHOW_LIST_VISIBILITY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean SHOW_LIST_SIGNATURE_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected boolean showListSignature = SHOW_LIST_SIGNATURE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected static final String ALIGNMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected String alignment = ALIGNMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotypeAttributeCompartment = SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showListStereotype = SHOW_LIST_STEREOTYPE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UMLConnectorImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PapyrusUMLNotationPackage.Literals.UML_CONNECTOR;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int getFontColor() {
+ return fontColor;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setFontColor(int newFontColor) {
+ int oldFontColor = fontColor;
+ fontColor = newFontColor;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_COLOR, oldFontColor, fontColor));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getFontName() {
+ return fontName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setFontName(String newFontName) {
+ String oldFontName = fontName;
+ fontName = newFontName;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_NAME, oldFontName, fontName));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int getFontHeight() {
+ return fontHeight;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setFontHeight(int newFontHeight) {
+ int oldFontHeight = fontHeight;
+ fontHeight = newFontHeight;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_HEIGHT, oldFontHeight, fontHeight));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isBold() {
+ return bold;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setBold(boolean newBold) {
+ boolean oldBold = bold;
+ bold = newBold;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__BOLD, oldBold, bold));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isItalic() {
+ return italic;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setItalic(boolean newItalic) {
+ boolean oldItalic = italic;
+ italic = newItalic;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__ITALIC, oldItalic, italic));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isUnderline() {
+ return underline;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setUnderline(boolean newUnderline) {
+ boolean oldUnderline = underline;
+ underline = newUnderline;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__UNDERLINE, oldUnderline, underline));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isStrikeThrough() {
+ return strikeThrough;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setStrikeThrough(boolean newStrikeThrough) {
+ boolean oldStrikeThrough = strikeThrough;
+ strikeThrough = newStrikeThrough;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__STRIKE_THROUGH, oldStrikeThrough, strikeThrough));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotype() {
+ return showStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotype(String newShowStereotype) {
+ String oldShowStereotype = showStereotype;
+ showStereotype = newShowStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE, oldShowStereotype, showStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListVisibility() {
+ return showListVisibility;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListVisibility(String newShowListVisibility) {
+ String oldShowListVisibility = showListVisibility;
+ showListVisibility = newShowListVisibility;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_VISIBILITY, oldShowListVisibility, showListVisibility));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isShowListSignature() {
+ return showListSignature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListSignature(boolean newShowListSignature) {
+ boolean oldShowListSignature = showListSignature;
+ showListSignature = newShowListSignature;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_SIGNATURE, oldShowListSignature, showListSignature));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getAlignment() {
+ return alignment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setAlignment(String newAlignment) {
+ String oldAlignment = alignment;
+ alignment = newAlignment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__ALIGNMENT, oldAlignment, alignment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotypeAttributeCompartment() {
+ return showStereotypeAttributeCompartment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotypeAttributeCompartment(String newShowStereotypeAttributeCompartment) {
+ String oldShowStereotypeAttributeCompartment = showStereotypeAttributeCompartment;
+ showStereotypeAttributeCompartment = newShowStereotypeAttributeCompartment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT, oldShowStereotypeAttributeCompartment, showStereotypeAttributeCompartment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListStereotype() {
+ return showListStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListStereotype(String newShowListStereotype) {
+ String oldShowListStereotype = showListStereotype;
+ showListStereotype = newShowListStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_STEREOTYPE, oldShowListStereotype, showListStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_COLOR:
+ return getFontColor();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_NAME:
+ return getFontName();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_HEIGHT:
+ return getFontHeight();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__BOLD:
+ return isBold();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ITALIC:
+ return isItalic();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__UNDERLINE:
+ return isUnderline();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__STRIKE_THROUGH:
+ return isStrikeThrough();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE:
+ return getShowStereotype();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_VISIBILITY:
+ return getShowListVisibility();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_SIGNATURE:
+ return isShowListSignature();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ALIGNMENT:
+ return getAlignment();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return getShowStereotypeAttributeCompartment();
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_STEREOTYPE:
+ return getShowListStereotype();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_COLOR:
+ setFontColor((Integer) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_NAME:
+ setFontName((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_HEIGHT:
+ setFontHeight((Integer) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__BOLD:
+ setBold((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ITALIC:
+ setItalic((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__UNDERLINE:
+ setUnderline((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__STRIKE_THROUGH:
+ setStrikeThrough((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE:
+ setShowStereotype((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_VISIBILITY:
+ setShowListVisibility((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_SIGNATURE:
+ setShowListSignature((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ALIGNMENT:
+ setAlignment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_COLOR:
+ setFontColor(FONT_COLOR_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_NAME:
+ setFontName(FONT_NAME_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_HEIGHT:
+ setFontHeight(FONT_HEIGHT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__BOLD:
+ setBold(BOLD_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ITALIC:
+ setItalic(ITALIC_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__UNDERLINE:
+ setUnderline(UNDERLINE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__STRIKE_THROUGH:
+ setStrikeThrough(STRIKE_THROUGH_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE:
+ setShowStereotype(SHOW_STEREOTYPE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_VISIBILITY:
+ setShowListVisibility(SHOW_LIST_VISIBILITY_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_SIGNATURE:
+ setShowListSignature(SHOW_LIST_SIGNATURE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ALIGNMENT:
+ setAlignment(ALIGNMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment(SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype(SHOW_LIST_STEREOTYPE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_COLOR:
+ return fontColor != FONT_COLOR_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_NAME:
+ return FONT_NAME_EDEFAULT == null ? fontName != null : !FONT_NAME_EDEFAULT.equals(fontName);
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_HEIGHT:
+ return fontHeight != FONT_HEIGHT_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__BOLD:
+ return bold != BOLD_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ITALIC:
+ return italic != ITALIC_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__UNDERLINE:
+ return underline != UNDERLINE_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__STRIKE_THROUGH:
+ return strikeThrough != STRIKE_THROUGH_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE:
+ return SHOW_STEREOTYPE_EDEFAULT == null ? showStereotype != null : !SHOW_STEREOTYPE_EDEFAULT.equals(showStereotype);
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_VISIBILITY:
+ return SHOW_LIST_VISIBILITY_EDEFAULT == null ? showListVisibility != null : !SHOW_LIST_VISIBILITY_EDEFAULT.equals(showListVisibility);
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_SIGNATURE:
+ return showListSignature != SHOW_LIST_SIGNATURE_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ALIGNMENT:
+ return ALIGNMENT_EDEFAULT == null ? alignment != null : !ALIGNMENT_EDEFAULT.equals(alignment);
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT == null ? showStereotypeAttributeCompartment != null : !SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT.equals(showStereotypeAttributeCompartment);
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_STEREOTYPE:
+ return SHOW_LIST_STEREOTYPE_EDEFAULT == null ? showListStereotype != null : !SHOW_LIST_STEREOTYPE_EDEFAULT.equals(showListStereotype);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class baseClass) {
+ if (baseClass == FontStyle.class) {
+ switch (derivedFeatureID) {
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_COLOR:
+ return NotationPackage.FONT_STYLE__FONT_COLOR;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_NAME:
+ return NotationPackage.FONT_STYLE__FONT_NAME;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_HEIGHT:
+ return NotationPackage.FONT_STYLE__FONT_HEIGHT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__BOLD:
+ return NotationPackage.FONT_STYLE__BOLD;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ITALIC:
+ return NotationPackage.FONT_STYLE__ITALIC;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__UNDERLINE:
+ return NotationPackage.FONT_STYLE__UNDERLINE;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__STRIKE_THROUGH:
+ return NotationPackage.FONT_STYLE__STRIKE_THROUGH;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == UMLView.class) {
+ switch (derivedFeatureID) {
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_VISIBILITY:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_SIGNATURE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__ALIGNMENT:
+ return PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+ case PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE;
+ 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 == FontStyle.class) {
+ switch (baseFeatureID) {
+ case NotationPackage.FONT_STYLE__FONT_COLOR:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_COLOR;
+ case NotationPackage.FONT_STYLE__FONT_NAME:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_NAME;
+ case NotationPackage.FONT_STYLE__FONT_HEIGHT:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__FONT_HEIGHT;
+ case NotationPackage.FONT_STYLE__BOLD:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__BOLD;
+ case NotationPackage.FONT_STYLE__ITALIC:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__ITALIC;
+ case NotationPackage.FONT_STYLE__UNDERLINE:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__UNDERLINE;
+ case NotationPackage.FONT_STYLE__STRIKE_THROUGH:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__STRIKE_THROUGH;
+ default:
+ return -1;
+ }
+ }
+ if (baseClass == UMLView.class) {
+ switch (baseFeatureID) {
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_VISIBILITY;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_SIGNATURE;
+ case PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__ALIGNMENT;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_CONNECTOR__SHOW_LIST_STEREOTYPE;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (fontColor: ");
+ result.append(fontColor);
+ result.append(", fontName: ");
+ result.append(fontName);
+ result.append(", fontHeight: ");
+ result.append(fontHeight);
+ result.append(", bold: ");
+ result.append(bold);
+ result.append(", italic: ");
+ result.append(italic);
+ result.append(", underline: ");
+ result.append(underline);
+ result.append(", strikeThrough: ");
+ result.append(strikeThrough);
+ result.append(", showStereotype: ");
+ result.append(showStereotype);
+ result.append(", showListVisibility: ");
+ result.append(showListVisibility);
+ result.append(", showListSignature: ");
+ result.append(showListSignature);
+ result.append(", alignment: ");
+ result.append(alignment);
+ result.append(", showStereotypeAttributeCompartment: ");
+ result.append(showStereotypeAttributeCompartment);
+ result.append(", showListStereotype: ");
+ result.append(showListStereotype);
+ result.append(')');
+ return result.toString();
+ }
+
+} // UMLConnectorImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLDiagramImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLDiagramImpl.java
new file mode 100644
index 0000000..47db8ff
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLDiagramImpl.java
@@ -0,0 +1,550 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.gmf.runtime.notation.impl.DiagramImpl;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>UML Diagram</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl#getShowStereotype <em>Show Stereotype</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl#getShowListVisibility <em>Show List Visibility</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl#isShowListSignature <em>Show List Signature</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl#getAlignment <em>Alignment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl#getShowStereotypeAttributeCompartment <em>Show Stereotype Attribute Compartment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLDiagramImpl#getShowListStereotype <em>Show List Stereotype</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class UMLDiagramImpl extends DiagramImpl implements UMLDiagram {
+
+ /**
+ * The default value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotype = SHOW_STEREOTYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_VISIBILITY_EDEFAULT = "None";
+
+ /**
+ * The cached value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected String showListVisibility = SHOW_LIST_VISIBILITY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean SHOW_LIST_SIGNATURE_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected boolean showListSignature = SHOW_LIST_SIGNATURE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected static final String ALIGNMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected String alignment = ALIGNMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotypeAttributeCompartment = SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showListStereotype = SHOW_LIST_STEREOTYPE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UMLDiagramImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PapyrusUMLNotationPackage.Literals.UML_DIAGRAM;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotype() {
+ return showStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotype(String newShowStereotype) {
+ String oldShowStereotype = showStereotype;
+ showStereotype = newShowStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE, oldShowStereotype, showStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListVisibility() {
+ return showListVisibility;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListVisibility(String newShowListVisibility) {
+ String oldShowListVisibility = showListVisibility;
+ showListVisibility = newShowListVisibility;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_VISIBILITY, oldShowListVisibility, showListVisibility));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isShowListSignature() {
+ return showListSignature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListSignature(boolean newShowListSignature) {
+ boolean oldShowListSignature = showListSignature;
+ showListSignature = newShowListSignature;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_SIGNATURE, oldShowListSignature, showListSignature));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getAlignment() {
+ return alignment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setAlignment(String newAlignment) {
+ String oldAlignment = alignment;
+ alignment = newAlignment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_DIAGRAM__ALIGNMENT, oldAlignment, alignment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotypeAttributeCompartment() {
+ return showStereotypeAttributeCompartment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotypeAttributeCompartment(String newShowStereotypeAttributeCompartment) {
+ String oldShowStereotypeAttributeCompartment = showStereotypeAttributeCompartment;
+ showStereotypeAttributeCompartment = newShowStereotypeAttributeCompartment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT, oldShowStereotypeAttributeCompartment, showStereotypeAttributeCompartment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListStereotype() {
+ return showListStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListStereotype(String newShowListStereotype) {
+ String oldShowListStereotype = showListStereotype;
+ showListStereotype = newShowListStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_STEREOTYPE, oldShowListStereotype, showListStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE:
+ return getShowStereotype();
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_VISIBILITY:
+ return getShowListVisibility();
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_SIGNATURE:
+ return isShowListSignature();
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__ALIGNMENT:
+ return getAlignment();
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return getShowStereotypeAttributeCompartment();
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_STEREOTYPE:
+ return getShowListStereotype();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE:
+ setShowStereotype((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_VISIBILITY:
+ setShowListVisibility((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_SIGNATURE:
+ setShowListSignature((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__ALIGNMENT:
+ setAlignment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE:
+ setShowStereotype(SHOW_STEREOTYPE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_VISIBILITY:
+ setShowListVisibility(SHOW_LIST_VISIBILITY_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_SIGNATURE:
+ setShowListSignature(SHOW_LIST_SIGNATURE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__ALIGNMENT:
+ setAlignment(ALIGNMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment(SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype(SHOW_LIST_STEREOTYPE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE:
+ return SHOW_STEREOTYPE_EDEFAULT == null ? showStereotype != null : !SHOW_STEREOTYPE_EDEFAULT.equals(showStereotype);
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_VISIBILITY:
+ return SHOW_LIST_VISIBILITY_EDEFAULT == null ? showListVisibility != null : !SHOW_LIST_VISIBILITY_EDEFAULT.equals(showListVisibility);
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_SIGNATURE:
+ return showListSignature != SHOW_LIST_SIGNATURE_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__ALIGNMENT:
+ return ALIGNMENT_EDEFAULT == null ? alignment != null : !ALIGNMENT_EDEFAULT.equals(alignment);
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT == null ? showStereotypeAttributeCompartment != null : !SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT.equals(showStereotypeAttributeCompartment);
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_STEREOTYPE:
+ return SHOW_LIST_STEREOTYPE_EDEFAULT == null ? showListStereotype != null : !SHOW_LIST_STEREOTYPE_EDEFAULT.equals(showListStereotype);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+ if (baseClass == UMLView.class) {
+ switch (derivedFeatureID) {
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_VISIBILITY:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_SIGNATURE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__ALIGNMENT:
+ return PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+ case PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE;
+ 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 == UMLView.class) {
+ switch (baseFeatureID) {
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY:
+ return PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_VISIBILITY;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE:
+ return PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_SIGNATURE;
+ case PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT:
+ return PapyrusUMLNotationPackage.UML_DIAGRAM__ALIGNMENT;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_DIAGRAM__SHOW_LIST_STEREOTYPE;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (showStereotype: ");
+ result.append(showStereotype);
+ result.append(", showListVisibility: ");
+ result.append(showListVisibility);
+ result.append(", showListSignature: ");
+ result.append(showListSignature);
+ result.append(", alignment: ");
+ result.append(alignment);
+ result.append(", showStereotypeAttributeCompartment: ");
+ result.append(showStereotypeAttributeCompartment);
+ result.append(", showListStereotype: ");
+ result.append(showListStereotype);
+ result.append(')');
+ return result.toString();
+ }
+
+} // UMLDiagramImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLFrameImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLFrameImpl.java
new file mode 100644
index 0000000..ea47dcf
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLFrameImpl.java
@@ -0,0 +1,48 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>UML Frame</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class UMLFrameImpl extends UMLShapeImpl implements UMLFrame {
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UMLFrameImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PapyrusUMLNotationPackage.Literals.UML_FRAME;
+ }
+
+} // UMLFrameImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLShapeCompartmentImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLShapeCompartmentImpl.java
new file mode 100644
index 0000000..b52442f
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLShapeCompartmentImpl.java
@@ -0,0 +1,611 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.gmf.runtime.notation.impl.CompartmentImpl;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>UML Shape Compartment</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl#getShowStereotype <em>Show Stereotype</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl#getShowListVisibility <em>Show List Visibility</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl#isShowListSignature <em>Show List Signature</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl#getAlignment <em>Alignment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl#getShowStereotypeAttributeCompartment <em>Show Stereotype Attribute Compartment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl#getShowListStereotype <em>Show List Stereotype</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeCompartmentImpl#isVerticalAlignment <em>Vertical Alignment</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class UMLShapeCompartmentImpl extends CompartmentImpl implements UMLShapeCompartment {
+
+ /**
+ * The default value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotype = SHOW_STEREOTYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_VISIBILITY_EDEFAULT = "None";
+
+ /**
+ * The cached value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected String showListVisibility = SHOW_LIST_VISIBILITY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean SHOW_LIST_SIGNATURE_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected boolean showListSignature = SHOW_LIST_SIGNATURE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected static final String ALIGNMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected String alignment = ALIGNMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotypeAttributeCompartment = SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showListStereotype = SHOW_LIST_STEREOTYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isVerticalAlignment() <em>Vertical Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isVerticalAlignment()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean VERTICAL_ALIGNMENT_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isVerticalAlignment() <em>Vertical Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isVerticalAlignment()
+ * @generated
+ * @ordered
+ */
+ protected boolean verticalAlignment = VERTICAL_ALIGNMENT_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UMLShapeCompartmentImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PapyrusUMLNotationPackage.Literals.UML_SHAPE_COMPARTMENT;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotype() {
+ return showStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotype(String newShowStereotype) {
+ String oldShowStereotype = showStereotype;
+ showStereotype = newShowStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE, oldShowStereotype, showStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListVisibility() {
+ return showListVisibility;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListVisibility(String newShowListVisibility) {
+ String oldShowListVisibility = showListVisibility;
+ showListVisibility = newShowListVisibility;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_VISIBILITY, oldShowListVisibility, showListVisibility));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isShowListSignature() {
+ return showListSignature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListSignature(boolean newShowListSignature) {
+ boolean oldShowListSignature = showListSignature;
+ showListSignature = newShowListSignature;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_SIGNATURE, oldShowListSignature, showListSignature));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getAlignment() {
+ return alignment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setAlignment(String newAlignment) {
+ String oldAlignment = alignment;
+ alignment = newAlignment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__ALIGNMENT, oldAlignment, alignment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotypeAttributeCompartment() {
+ return showStereotypeAttributeCompartment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotypeAttributeCompartment(String newShowStereotypeAttributeCompartment) {
+ String oldShowStereotypeAttributeCompartment = showStereotypeAttributeCompartment;
+ showStereotypeAttributeCompartment = newShowStereotypeAttributeCompartment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT, oldShowStereotypeAttributeCompartment, showStereotypeAttributeCompartment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListStereotype() {
+ return showListStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListStereotype(String newShowListStereotype) {
+ String oldShowListStereotype = showListStereotype;
+ showListStereotype = newShowListStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_STEREOTYPE, oldShowListStereotype, showListStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isVerticalAlignment() {
+ return verticalAlignment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setVerticalAlignment(boolean newVerticalAlignment) {
+ boolean oldVerticalAlignment = verticalAlignment;
+ verticalAlignment = newVerticalAlignment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__VERTICAL_ALIGNMENT, oldVerticalAlignment, verticalAlignment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE:
+ return getShowStereotype();
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_VISIBILITY:
+ return getShowListVisibility();
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_SIGNATURE:
+ return isShowListSignature();
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__ALIGNMENT:
+ return getAlignment();
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return getShowStereotypeAttributeCompartment();
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_STEREOTYPE:
+ return getShowListStereotype();
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__VERTICAL_ALIGNMENT:
+ return isVerticalAlignment();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE:
+ setShowStereotype((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_VISIBILITY:
+ setShowListVisibility((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_SIGNATURE:
+ setShowListSignature((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__ALIGNMENT:
+ setAlignment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__VERTICAL_ALIGNMENT:
+ setVerticalAlignment((Boolean) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE:
+ setShowStereotype(SHOW_STEREOTYPE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_VISIBILITY:
+ setShowListVisibility(SHOW_LIST_VISIBILITY_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_SIGNATURE:
+ setShowListSignature(SHOW_LIST_SIGNATURE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__ALIGNMENT:
+ setAlignment(ALIGNMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment(SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype(SHOW_LIST_STEREOTYPE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__VERTICAL_ALIGNMENT:
+ setVerticalAlignment(VERTICAL_ALIGNMENT_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE:
+ return SHOW_STEREOTYPE_EDEFAULT == null ? showStereotype != null : !SHOW_STEREOTYPE_EDEFAULT.equals(showStereotype);
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_VISIBILITY:
+ return SHOW_LIST_VISIBILITY_EDEFAULT == null ? showListVisibility != null : !SHOW_LIST_VISIBILITY_EDEFAULT.equals(showListVisibility);
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_SIGNATURE:
+ return showListSignature != SHOW_LIST_SIGNATURE_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__ALIGNMENT:
+ return ALIGNMENT_EDEFAULT == null ? alignment != null : !ALIGNMENT_EDEFAULT.equals(alignment);
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT == null ? showStereotypeAttributeCompartment != null : !SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT.equals(showStereotypeAttributeCompartment);
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_STEREOTYPE:
+ return SHOW_LIST_STEREOTYPE_EDEFAULT == null ? showListStereotype != null : !SHOW_LIST_STEREOTYPE_EDEFAULT.equals(showListStereotype);
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__VERTICAL_ALIGNMENT:
+ return verticalAlignment != VERTICAL_ALIGNMENT_EDEFAULT;
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class baseClass) {
+ if (baseClass == UMLView.class) {
+ switch (derivedFeatureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_VISIBILITY:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_SIGNATURE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__ALIGNMENT:
+ return PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE;
+ 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 == UMLView.class) {
+ switch (baseFeatureID) {
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY:
+ return PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_VISIBILITY;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE:
+ return PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_SIGNATURE;
+ case PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT:
+ return PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__ALIGNMENT;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT__SHOW_LIST_STEREOTYPE;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (showStereotype: ");
+ result.append(showStereotype);
+ result.append(", showListVisibility: ");
+ result.append(showListVisibility);
+ result.append(", showListSignature: ");
+ result.append(showListSignature);
+ result.append(", alignment: ");
+ result.append(alignment);
+ result.append(", showStereotypeAttributeCompartment: ");
+ result.append(showStereotypeAttributeCompartment);
+ result.append(", showListStereotype: ");
+ result.append(showListStereotype);
+ result.append(", verticalAlignment: ");
+ result.append(verticalAlignment);
+ result.append(')');
+ return result.toString();
+ }
+
+} // UMLShapeCompartmentImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLShapeImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLShapeImpl.java
new file mode 100644
index 0000000..51295a9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLShapeImpl.java
@@ -0,0 +1,550 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.gmf.runtime.notation.impl.ShapeImpl;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>UML Shape</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl#getShowStereotype <em>Show Stereotype</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl#getShowListVisibility <em>Show List Visibility</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl#isShowListSignature <em>Show List Signature</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl#getAlignment <em>Alignment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl#getShowStereotypeAttributeCompartment <em>Show Stereotype Attribute Compartment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLShapeImpl#getShowListStereotype <em>Show List Stereotype</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class UMLShapeImpl extends ShapeImpl implements UMLShape {
+
+ /**
+ * The default value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotype = SHOW_STEREOTYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_VISIBILITY_EDEFAULT = "None";
+
+ /**
+ * The cached value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected String showListVisibility = SHOW_LIST_VISIBILITY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean SHOW_LIST_SIGNATURE_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected boolean showListSignature = SHOW_LIST_SIGNATURE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected static final String ALIGNMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected String alignment = ALIGNMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotypeAttributeCompartment = SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showListStereotype = SHOW_LIST_STEREOTYPE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UMLShapeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PapyrusUMLNotationPackage.Literals.UML_SHAPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotype() {
+ return showStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotype(String newShowStereotype) {
+ String oldShowStereotype = showStereotype;
+ showStereotype = newShowStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE, oldShowStereotype, showStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListVisibility() {
+ return showListVisibility;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListVisibility(String newShowListVisibility) {
+ String oldShowListVisibility = showListVisibility;
+ showListVisibility = newShowListVisibility;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_VISIBILITY, oldShowListVisibility, showListVisibility));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isShowListSignature() {
+ return showListSignature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListSignature(boolean newShowListSignature) {
+ boolean oldShowListSignature = showListSignature;
+ showListSignature = newShowListSignature;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_SIGNATURE, oldShowListSignature, showListSignature));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getAlignment() {
+ return alignment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setAlignment(String newAlignment) {
+ String oldAlignment = alignment;
+ alignment = newAlignment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE__ALIGNMENT, oldAlignment, alignment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotypeAttributeCompartment() {
+ return showStereotypeAttributeCompartment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotypeAttributeCompartment(String newShowStereotypeAttributeCompartment) {
+ String oldShowStereotypeAttributeCompartment = showStereotypeAttributeCompartment;
+ showStereotypeAttributeCompartment = newShowStereotypeAttributeCompartment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT, oldShowStereotypeAttributeCompartment, showStereotypeAttributeCompartment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListStereotype() {
+ return showListStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListStereotype(String newShowListStereotype) {
+ String oldShowListStereotype = showListStereotype;
+ showListStereotype = newShowListStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_STEREOTYPE, oldShowListStereotype, showListStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE:
+ return getShowStereotype();
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_VISIBILITY:
+ return getShowListVisibility();
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_SIGNATURE:
+ return isShowListSignature();
+ case PapyrusUMLNotationPackage.UML_SHAPE__ALIGNMENT:
+ return getAlignment();
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return getShowStereotypeAttributeCompartment();
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_STEREOTYPE:
+ return getShowListStereotype();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE:
+ setShowStereotype((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_VISIBILITY:
+ setShowListVisibility((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_SIGNATURE:
+ setShowListSignature((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__ALIGNMENT:
+ setAlignment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE:
+ setShowStereotype(SHOW_STEREOTYPE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_VISIBILITY:
+ setShowListVisibility(SHOW_LIST_VISIBILITY_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_SIGNATURE:
+ setShowListSignature(SHOW_LIST_SIGNATURE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__ALIGNMENT:
+ setAlignment(ALIGNMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment(SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype(SHOW_LIST_STEREOTYPE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE:
+ return SHOW_STEREOTYPE_EDEFAULT == null ? showStereotype != null : !SHOW_STEREOTYPE_EDEFAULT.equals(showStereotype);
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_VISIBILITY:
+ return SHOW_LIST_VISIBILITY_EDEFAULT == null ? showListVisibility != null : !SHOW_LIST_VISIBILITY_EDEFAULT.equals(showListVisibility);
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_SIGNATURE:
+ return showListSignature != SHOW_LIST_SIGNATURE_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_SHAPE__ALIGNMENT:
+ return ALIGNMENT_EDEFAULT == null ? alignment != null : !ALIGNMENT_EDEFAULT.equals(alignment);
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT == null ? showStereotypeAttributeCompartment != null : !SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT.equals(showStereotypeAttributeCompartment);
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_STEREOTYPE:
+ return SHOW_LIST_STEREOTYPE_EDEFAULT == null ? showListStereotype != null : !SHOW_LIST_STEREOTYPE_EDEFAULT.equals(showListStereotype);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public int eBaseStructuralFeatureID(int derivedFeatureID, Class baseClass) {
+ if (baseClass == UMLView.class) {
+ switch (derivedFeatureID) {
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_VISIBILITY:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_SIGNATURE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE;
+ case PapyrusUMLNotationPackage.UML_SHAPE__ALIGNMENT:
+ return PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+ case PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE;
+ 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 == UMLView.class) {
+ switch (baseFeatureID) {
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY:
+ return PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_VISIBILITY;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE:
+ return PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_SIGNATURE;
+ case PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT:
+ return PapyrusUMLNotationPackage.UML_SHAPE__ALIGNMENT;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return PapyrusUMLNotationPackage.UML_SHAPE__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE:
+ return PapyrusUMLNotationPackage.UML_SHAPE__SHOW_LIST_STEREOTYPE;
+ default:
+ return -1;
+ }
+ }
+ return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (showStereotype: ");
+ result.append(showStereotype);
+ result.append(", showListVisibility: ");
+ result.append(showListVisibility);
+ result.append(", showListSignature: ");
+ result.append(showListSignature);
+ result.append(", alignment: ");
+ result.append(alignment);
+ result.append(", showStereotypeAttributeCompartment: ");
+ result.append(showStereotypeAttributeCompartment);
+ result.append(", showListStereotype: ");
+ result.append(showListStereotype);
+ result.append(')');
+ return result.toString();
+ }
+
+} // UMLShapeImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLViewImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLViewImpl.java
new file mode 100644
index 0000000..49a5673
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/impl/UMLViewImpl.java
@@ -0,0 +1,491 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.gmf.runtime.notation.impl.ViewImpl;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>UML View</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl#getShowStereotype <em>Show Stereotype</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl#getShowListVisibility <em>Show List Visibility</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl#isShowListSignature <em>Show List Signature</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl#getAlignment <em>Alignment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl#getShowStereotypeAttributeCompartment <em>Show Stereotype Attribute Compartment</em>}</li>
+ * <li>{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.impl.UMLViewImpl#getShowListStereotype <em>Show List Stereotype</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class UMLViewImpl extends ViewImpl implements UMLView {
+
+ /**
+ * The default value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotype() <em>Show Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotype = SHOW_STEREOTYPE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_VISIBILITY_EDEFAULT = "None";
+
+ /**
+ * The cached value of the '{@link #getShowListVisibility() <em>Show List Visibility</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListVisibility()
+ * @generated
+ * @ordered
+ */
+ protected String showListVisibility = SHOW_LIST_VISIBILITY_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected static final boolean SHOW_LIST_SIGNATURE_EDEFAULT = true;
+
+ /**
+ * The cached value of the '{@link #isShowListSignature() <em>Show List Signature</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #isShowListSignature()
+ * @generated
+ * @ordered
+ */
+ protected boolean showListSignature = SHOW_LIST_SIGNATURE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected static final String ALIGNMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAlignment() <em>Alignment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAlignment()
+ * @generated
+ * @ordered
+ */
+ protected String alignment = ALIGNMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowStereotypeAttributeCompartment() <em>Show Stereotype Attribute Compartment</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowStereotypeAttributeCompartment()
+ * @generated
+ * @ordered
+ */
+ protected String showStereotypeAttributeCompartment = SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected static final String SHOW_LIST_STEREOTYPE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getShowListStereotype() <em>Show List Stereotype</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getShowListStereotype()
+ * @generated
+ * @ordered
+ */
+ protected String showListStereotype = SHOW_LIST_STEREOTYPE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected UMLViewImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return PapyrusUMLNotationPackage.Literals.UML_VIEW;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotype() {
+ return showStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotype(String newShowStereotype) {
+ String oldShowStereotype = showStereotype;
+ showStereotype = newShowStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE, oldShowStereotype, showStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListVisibility() {
+ return showListVisibility;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListVisibility(String newShowListVisibility) {
+ String oldShowListVisibility = showListVisibility;
+ showListVisibility = newShowListVisibility;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY, oldShowListVisibility, showListVisibility));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean isShowListSignature() {
+ return showListSignature;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListSignature(boolean newShowListSignature) {
+ boolean oldShowListSignature = showListSignature;
+ showListSignature = newShowListSignature;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE, oldShowListSignature, showListSignature));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getAlignment() {
+ return alignment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setAlignment(String newAlignment) {
+ String oldAlignment = alignment;
+ alignment = newAlignment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT, oldAlignment, alignment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowStereotypeAttributeCompartment() {
+ return showStereotypeAttributeCompartment;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowStereotypeAttributeCompartment(String newShowStereotypeAttributeCompartment) {
+ String oldShowStereotypeAttributeCompartment = showStereotypeAttributeCompartment;
+ showStereotypeAttributeCompartment = newShowStereotypeAttributeCompartment;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT, oldShowStereotypeAttributeCompartment, showStereotypeAttributeCompartment));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getShowListStereotype() {
+ return showListStereotype;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void setShowListStereotype(String newShowListStereotype) {
+ String oldShowListStereotype = showListStereotype;
+ showListStereotype = newShowListStereotype;
+ if (eNotificationRequired()) {
+ eNotify(new ENotificationImpl(this, Notification.SET, PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE, oldShowListStereotype, showListStereotype));
+ }
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE:
+ return getShowStereotype();
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY:
+ return getShowListVisibility();
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE:
+ return isShowListSignature();
+ case PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT:
+ return getAlignment();
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return getShowStereotypeAttributeCompartment();
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE:
+ return getShowListStereotype();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE:
+ setShowStereotype((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY:
+ setShowListVisibility((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE:
+ setShowListSignature((Boolean) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT:
+ setAlignment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment((String) newValue);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype((String) newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE:
+ setShowStereotype(SHOW_STEREOTYPE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY:
+ setShowListVisibility(SHOW_LIST_VISIBILITY_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE:
+ setShowListSignature(SHOW_LIST_SIGNATURE_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT:
+ setAlignment(ALIGNMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ setShowStereotypeAttributeCompartment(SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT);
+ return;
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE:
+ setShowListStereotype(SHOW_LIST_STEREOTYPE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch (featureID) {
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE:
+ return SHOW_STEREOTYPE_EDEFAULT == null ? showStereotype != null : !SHOW_STEREOTYPE_EDEFAULT.equals(showStereotype);
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_VISIBILITY:
+ return SHOW_LIST_VISIBILITY_EDEFAULT == null ? showListVisibility != null : !SHOW_LIST_VISIBILITY_EDEFAULT.equals(showListVisibility);
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_SIGNATURE:
+ return showListSignature != SHOW_LIST_SIGNATURE_EDEFAULT;
+ case PapyrusUMLNotationPackage.UML_VIEW__ALIGNMENT:
+ return ALIGNMENT_EDEFAULT == null ? alignment != null : !ALIGNMENT_EDEFAULT.equals(alignment);
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT:
+ return SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT == null ? showStereotypeAttributeCompartment != null : !SHOW_STEREOTYPE_ATTRIBUTE_COMPARTMENT_EDEFAULT.equals(showStereotypeAttributeCompartment);
+ case PapyrusUMLNotationPackage.UML_VIEW__SHOW_LIST_STEREOTYPE:
+ return SHOW_LIST_STEREOTYPE_EDEFAULT == null ? showListStereotype != null : !SHOW_LIST_STEREOTYPE_EDEFAULT.equals(showListStereotype);
+ }
+ return super.eIsSet(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String toString() {
+ if (eIsProxy()) {
+ return super.toString();
+ }
+
+ StringBuffer result = new StringBuffer(super.toString());
+ result.append(" (showStereotype: ");
+ result.append(showStereotype);
+ result.append(", showListVisibility: ");
+ result.append(showListVisibility);
+ result.append(", showListSignature: ");
+ result.append(showListSignature);
+ result.append(", alignment: ");
+ result.append(alignment);
+ result.append(", showStereotypeAttributeCompartment: ");
+ result.append(showStereotypeAttributeCompartment);
+ result.append(", showListStereotype: ");
+ result.append(showListStereotype);
+ result.append(')');
+ return result.toString();
+ }
+
+} // UMLViewImpl
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusRSANotationAdapterFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusRSANotationAdapterFactory.java
new file mode 100644
index 0000000..6dfe785
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusRSANotationAdapterFactory.java
@@ -0,0 +1,766 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.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.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.notation.BasicCompartment;
+import org.eclipse.gmf.runtime.notation.BasicDecorationNode;
+import org.eclipse.gmf.runtime.notation.CanonicalStyle;
+import org.eclipse.gmf.runtime.notation.Compartment;
+import org.eclipse.gmf.runtime.notation.Connector;
+import org.eclipse.gmf.runtime.notation.ConnectorStyle;
+import org.eclipse.gmf.runtime.notation.DecorationNode;
+import org.eclipse.gmf.runtime.notation.DescriptionStyle;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.DrawerStyle;
+import org.eclipse.gmf.runtime.notation.Edge;
+import org.eclipse.gmf.runtime.notation.FillStyle;
+import org.eclipse.gmf.runtime.notation.FontStyle;
+import org.eclipse.gmf.runtime.notation.LineStyle;
+import org.eclipse.gmf.runtime.notation.Node;
+import org.eclipse.gmf.runtime.notation.RoundedCornersStyle;
+import org.eclipse.gmf.runtime.notation.RoutingStyle;
+import org.eclipse.gmf.runtime.notation.Shape;
+import org.eclipse.gmf.runtime.notation.ShapeStyle;
+import org.eclipse.gmf.runtime.notation.Style;
+import org.eclipse.gmf.runtime.notation.TitleStyle;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- 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.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage
+ * @generated
+ */
+public class PapyrusRSANotationAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static PapyrusUMLNotationPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public PapyrusRSANotationAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = PapyrusUMLNotationPackage.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 PapyrusRSANotationSwitch<Adapter> modelSwitch = new PapyrusRSANotationSwitch<Adapter>() {
+ @Override
+ public Adapter caseUMLDiagram(UMLDiagram object) {
+ return createUMLDiagramAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLFrame(UMLFrame object) {
+ return createUMLFrameAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLShapeCompartment(UMLShapeCompartment object) {
+ return createUMLShapeCompartmentAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLShape(UMLShape object) {
+ return createUMLShapeAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLConnector(UMLConnector object) {
+ return createUMLConnectorAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLView(UMLView object) {
+ return createUMLViewAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLComponent(UMLComponent object) {
+ return createUMLComponentAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLClassifierShape(UMLClassifierShape object) {
+ return createUMLClassifierShapeAdapter();
+ }
+
+ @Override
+ public Adapter caseEModelElement(EModelElement object) {
+ return createEModelElementAdapter();
+ }
+
+ @Override
+ public Adapter caseView(View object) {
+ return createViewAdapter();
+ }
+
+ @Override
+ public Adapter caseDiagram(Diagram object) {
+ return createDiagramAdapter();
+ }
+
+ @Override
+ public Adapter caseNode(Node object) {
+ return createNodeAdapter();
+ }
+
+ @Override
+ public Adapter caseStyle(Style object) {
+ return createStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseFontStyle(FontStyle object) {
+ return createFontStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseDescriptionStyle(DescriptionStyle object) {
+ return createDescriptionStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseFillStyle(FillStyle object) {
+ return createFillStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseLineStyle(LineStyle object) {
+ return createLineStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseRoundedCornersStyle(RoundedCornersStyle object) {
+ return createRoundedCornersStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseShapeStyle(ShapeStyle object) {
+ return createShapeStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseShape(Shape object) {
+ return createShapeAdapter();
+ }
+
+ @Override
+ public Adapter caseBasicDecorationNode(BasicDecorationNode object) {
+ return createBasicDecorationNodeAdapter();
+ }
+
+ @Override
+ public Adapter caseDecorationNode(DecorationNode object) {
+ return createDecorationNodeAdapter();
+ }
+
+ @Override
+ public Adapter caseDrawerStyle(DrawerStyle object) {
+ return createDrawerStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseBasicCompartment(BasicCompartment object) {
+ return createBasicCompartmentAdapter();
+ }
+
+ @Override
+ public Adapter caseCanonicalStyle(CanonicalStyle object) {
+ return createCanonicalStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseTitleStyle(TitleStyle object) {
+ return createTitleStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseCompartment(Compartment object) {
+ return createCompartmentAdapter();
+ }
+
+ @Override
+ public Adapter caseEdge(Edge object) {
+ return createEdgeAdapter();
+ }
+
+ @Override
+ public Adapter caseRoutingStyle(RoutingStyle object) {
+ return createRoutingStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseConnectorStyle(ConnectorStyle object) {
+ return createConnectorStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseConnector(Connector object) {
+ return createConnectorAdapter();
+ }
+
+ @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.interoperability.rsa.umlnotation.UMLDiagram <em>UML Diagram</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.interoperability.rsa.umlnotation.UMLDiagram
+ * @generated
+ */
+ public Adapter createUMLDiagramAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame <em>UML Frame</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.interoperability.rsa.umlnotation.UMLFrame
+ * @generated
+ */
+ public Adapter createUMLFrameAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment <em>UML Shape Compartment</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.interoperability.rsa.umlnotation.UMLShapeCompartment
+ * @generated
+ */
+ public Adapter createUMLShapeCompartmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape <em>UML Shape</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.interoperability.rsa.umlnotation.UMLShape
+ * @generated
+ */
+ public Adapter createUMLShapeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector <em>UML Connector</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.interoperability.rsa.umlnotation.UMLConnector
+ * @generated
+ */
+ public Adapter createUMLConnectorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView <em>UML View</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.interoperability.rsa.umlnotation.UMLView
+ * @generated
+ */
+ public Adapter createUMLViewAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent <em>UML Component</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.interoperability.rsa.umlnotation.UMLComponent
+ * @generated
+ */
+ public Adapter createUMLComponentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape <em>UML Classifier Shape</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.interoperability.rsa.umlnotation.UMLClassifierShape
+ * @generated
+ */
+ public Adapter createUMLClassifierShapeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel 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.emf.ecore.EModelElement
+ * @generated
+ */
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.View <em>View</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.gmf.runtime.notation.View
+ * @generated
+ */
+ public Adapter createViewAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Diagram <em>Diagram</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.gmf.runtime.notation.Diagram
+ * @generated
+ */
+ public Adapter createDiagramAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Node <em>Node</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.gmf.runtime.notation.Node
+ * @generated
+ */
+ public Adapter createNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Style <em>Style</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.gmf.runtime.notation.Style
+ * @generated
+ */
+ public Adapter createStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.FontStyle <em>Font Style</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.gmf.runtime.notation.FontStyle
+ * @generated
+ */
+ public Adapter createFontStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.DescriptionStyle <em>Description Style</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.gmf.runtime.notation.DescriptionStyle
+ * @generated
+ */
+ public Adapter createDescriptionStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.FillStyle <em>Fill Style</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.gmf.runtime.notation.FillStyle
+ * @generated
+ */
+ public Adapter createFillStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.LineStyle <em>Line Style</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.gmf.runtime.notation.LineStyle
+ * @generated
+ */
+ public Adapter createLineStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.RoundedCornersStyle <em>Rounded Corners Style</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.gmf.runtime.notation.RoundedCornersStyle
+ * @generated
+ */
+ public Adapter createRoundedCornersStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.ShapeStyle <em>Shape Style</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.gmf.runtime.notation.ShapeStyle
+ * @generated
+ */
+ public Adapter createShapeStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Shape <em>Shape</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.gmf.runtime.notation.Shape
+ * @generated
+ */
+ public Adapter createShapeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.BasicDecorationNode <em>Basic Decoration Node</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.gmf.runtime.notation.BasicDecorationNode
+ * @generated
+ */
+ public Adapter createBasicDecorationNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.DecorationNode <em>Decoration Node</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.gmf.runtime.notation.DecorationNode
+ * @generated
+ */
+ public Adapter createDecorationNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.DrawerStyle <em>Drawer Style</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.gmf.runtime.notation.DrawerStyle
+ * @generated
+ */
+ public Adapter createDrawerStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.BasicCompartment <em>Basic Compartment</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.gmf.runtime.notation.BasicCompartment
+ * @generated
+ */
+ public Adapter createBasicCompartmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.CanonicalStyle <em>Canonical Style</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.gmf.runtime.notation.CanonicalStyle
+ * @generated
+ */
+ public Adapter createCanonicalStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.TitleStyle <em>Title Style</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.gmf.runtime.notation.TitleStyle
+ * @generated
+ */
+ public Adapter createTitleStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Compartment <em>Compartment</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.gmf.runtime.notation.Compartment
+ * @generated
+ */
+ public Adapter createCompartmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Edge <em>Edge</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.gmf.runtime.notation.Edge
+ * @generated
+ */
+ public Adapter createEdgeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.RoutingStyle <em>Routing Style</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.gmf.runtime.notation.RoutingStyle
+ * @generated
+ */
+ public Adapter createRoutingStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.ConnectorStyle <em>Connector Style</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.gmf.runtime.notation.ConnectorStyle
+ * @generated
+ */
+ public Adapter createConnectorStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Connector <em>Connector</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.gmf.runtime.notation.Connector
+ * @generated
+ */
+ public Adapter createConnectorAdapter() {
+ 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;
+ }
+
+} // PapyrusRSANotationAdapterFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusRSANotationSwitch.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusRSANotationSwitch.java
new file mode 100644
index 0000000..872c9cd
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusRSANotationSwitch.java
@@ -0,0 +1,965 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.util;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.gmf.runtime.notation.BasicCompartment;
+import org.eclipse.gmf.runtime.notation.BasicDecorationNode;
+import org.eclipse.gmf.runtime.notation.CanonicalStyle;
+import org.eclipse.gmf.runtime.notation.Compartment;
+import org.eclipse.gmf.runtime.notation.Connector;
+import org.eclipse.gmf.runtime.notation.ConnectorStyle;
+import org.eclipse.gmf.runtime.notation.DecorationNode;
+import org.eclipse.gmf.runtime.notation.DescriptionStyle;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.DrawerStyle;
+import org.eclipse.gmf.runtime.notation.Edge;
+import org.eclipse.gmf.runtime.notation.FillStyle;
+import org.eclipse.gmf.runtime.notation.FontStyle;
+import org.eclipse.gmf.runtime.notation.LineStyle;
+import org.eclipse.gmf.runtime.notation.Node;
+import org.eclipse.gmf.runtime.notation.RoundedCornersStyle;
+import org.eclipse.gmf.runtime.notation.RoutingStyle;
+import org.eclipse.gmf.runtime.notation.Shape;
+import org.eclipse.gmf.runtime.notation.ShapeStyle;
+import org.eclipse.gmf.runtime.notation.Style;
+import org.eclipse.gmf.runtime.notation.TitleStyle;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- 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.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage
+ * @generated
+ */
+public class PapyrusRSANotationSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static PapyrusUMLNotationPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public PapyrusRSANotationSwitch() {
+ if (modelPackage == null) {
+ modelPackage = PapyrusUMLNotationPackage.eINSTANCE;
+ }
+ }
+
+ /**
+ * Checks whether this is a switch for the given package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @parameter 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 PapyrusUMLNotationPackage.UML_DIAGRAM: {
+ UMLDiagram umlDiagram = (UMLDiagram) theEObject;
+ T result = caseUMLDiagram(umlDiagram);
+ if (result == null) {
+ result = caseDiagram(umlDiagram);
+ }
+ if (result == null) {
+ result = caseUMLView(umlDiagram);
+ }
+ if (result == null) {
+ result = caseView(umlDiagram);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlDiagram);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_FRAME: {
+ UMLFrame umlFrame = (UMLFrame) theEObject;
+ T result = caseUMLFrame(umlFrame);
+ if (result == null) {
+ result = caseUMLShape(umlFrame);
+ }
+ if (result == null) {
+ result = caseShape(umlFrame);
+ }
+ if (result == null) {
+ result = caseUMLView(umlFrame);
+ }
+ if (result == null) {
+ result = caseNode(umlFrame);
+ }
+ if (result == null) {
+ result = caseShapeStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseView(umlFrame);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseDescriptionStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseFillStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlFrame);
+ }
+ if (result == null) {
+ result = caseStyle(umlFrame);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT: {
+ UMLShapeCompartment umlShapeCompartment = (UMLShapeCompartment) theEObject;
+ T result = caseUMLShapeCompartment(umlShapeCompartment);
+ if (result == null) {
+ result = caseCompartment(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseUMLView(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseBasicCompartment(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseCanonicalStyle(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseTitleStyle(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseDecorationNode(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseDrawerStyle(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseBasicDecorationNode(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseStyle(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseNode(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseView(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_SHAPE: {
+ UMLShape umlShape = (UMLShape) theEObject;
+ T result = caseUMLShape(umlShape);
+ if (result == null) {
+ result = caseShape(umlShape);
+ }
+ if (result == null) {
+ result = caseUMLView(umlShape);
+ }
+ if (result == null) {
+ result = caseNode(umlShape);
+ }
+ if (result == null) {
+ result = caseShapeStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseView(umlShape);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseDescriptionStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseFillStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlShape);
+ }
+ if (result == null) {
+ result = caseStyle(umlShape);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_CONNECTOR: {
+ UMLConnector umlConnector = (UMLConnector) theEObject;
+ T result = caseUMLConnector(umlConnector);
+ if (result == null) {
+ result = caseConnector(umlConnector);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseUMLView(umlConnector);
+ }
+ if (result == null) {
+ result = caseEdge(umlConnector);
+ }
+ if (result == null) {
+ result = caseConnectorStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseView(umlConnector);
+ }
+ if (result == null) {
+ result = caseRoutingStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlConnector);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseStyle(umlConnector);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_VIEW: {
+ UMLView umlView = (UMLView) theEObject;
+ T result = caseUMLView(umlView);
+ if (result == null) {
+ result = caseView(umlView);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlView);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_COMPONENT: {
+ UMLComponent umlComponent = (UMLComponent) theEObject;
+ T result = caseUMLComponent(umlComponent);
+ if (result == null) {
+ result = caseUMLShape(umlComponent);
+ }
+ if (result == null) {
+ result = caseShape(umlComponent);
+ }
+ if (result == null) {
+ result = caseUMLView(umlComponent);
+ }
+ if (result == null) {
+ result = caseNode(umlComponent);
+ }
+ if (result == null) {
+ result = caseShapeStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseView(umlComponent);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseDescriptionStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseFillStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlComponent);
+ }
+ if (result == null) {
+ result = caseStyle(umlComponent);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_CLASSIFIER_SHAPE: {
+ UMLClassifierShape umlClassifierShape = (UMLClassifierShape) theEObject;
+ T result = caseUMLClassifierShape(umlClassifierShape);
+ if (result == null) {
+ result = caseUMLShape(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseShape(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseUMLView(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseNode(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseShapeStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseView(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseDescriptionStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseFillStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Diagram</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>UML Diagram</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLDiagram(UMLDiagram object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Frame</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>UML Frame</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLFrame(UMLFrame object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Shape Compartment</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>UML Shape Compartment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLShapeCompartment(UMLShapeCompartment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Shape</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>UML Shape</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLShape(UMLShape object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Connector</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>UML Connector</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLConnector(UMLConnector object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML View</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>UML View</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLView(UMLView object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Component</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>UML Component</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLComponent(UMLComponent object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Classifier Shape</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>UML Classifier Shape</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLClassifierShape(UMLClassifierShape object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel 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>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>View</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</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseView(View object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Diagram</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>Diagram</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDiagram(Diagram object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Node</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>Node</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNode(Node object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Style</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>Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStyle(Style object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Font Style</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>Font Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFontStyle(FontStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Description Style</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>Description Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDescriptionStyle(DescriptionStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Fill Style</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>Fill Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFillStyle(FillStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Line Style</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>Line Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLineStyle(LineStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Rounded Corners Style</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>Rounded Corners Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRoundedCornersStyle(RoundedCornersStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Shape Style</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>Shape Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseShapeStyle(ShapeStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Shape</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>Shape</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseShape(Shape object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Basic Decoration Node</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 Decoration Node</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBasicDecorationNode(BasicDecorationNode object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Decoration Node</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>Decoration Node</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDecorationNode(DecorationNode object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Drawer Style</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>Drawer Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDrawerStyle(DrawerStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Basic Compartment</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 Compartment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBasicCompartment(BasicCompartment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Canonical Style</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>Canonical Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCanonicalStyle(CanonicalStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Title Style</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>Title Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTitleStyle(TitleStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Compartment</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>Compartment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCompartment(Compartment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Edge</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>Edge</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEdge(Edge object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Routing Style</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>Routing Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRoutingStyle(RoutingStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Connector Style</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>Connector Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConnectorStyle(ConnectorStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Connector</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>Connector</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConnector(Connector 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;
+ }
+
+} // PapyrusRSANotationSwitch
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusUMLNotationAdapterFactory.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusUMLNotationAdapterFactory.java
new file mode 100644
index 0000000..02eae8b
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusUMLNotationAdapterFactory.java
@@ -0,0 +1,766 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.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.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.notation.BasicCompartment;
+import org.eclipse.gmf.runtime.notation.BasicDecorationNode;
+import org.eclipse.gmf.runtime.notation.CanonicalStyle;
+import org.eclipse.gmf.runtime.notation.Compartment;
+import org.eclipse.gmf.runtime.notation.Connector;
+import org.eclipse.gmf.runtime.notation.ConnectorStyle;
+import org.eclipse.gmf.runtime.notation.DecorationNode;
+import org.eclipse.gmf.runtime.notation.DescriptionStyle;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.DrawerStyle;
+import org.eclipse.gmf.runtime.notation.Edge;
+import org.eclipse.gmf.runtime.notation.FillStyle;
+import org.eclipse.gmf.runtime.notation.FontStyle;
+import org.eclipse.gmf.runtime.notation.LineStyle;
+import org.eclipse.gmf.runtime.notation.Node;
+import org.eclipse.gmf.runtime.notation.RoundedCornersStyle;
+import org.eclipse.gmf.runtime.notation.RoutingStyle;
+import org.eclipse.gmf.runtime.notation.Shape;
+import org.eclipse.gmf.runtime.notation.ShapeStyle;
+import org.eclipse.gmf.runtime.notation.Style;
+import org.eclipse.gmf.runtime.notation.TitleStyle;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- 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.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage
+ * @generated
+ */
+public class PapyrusUMLNotationAdapterFactory extends AdapterFactoryImpl {
+ /**
+ * The cached model package.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static PapyrusUMLNotationPackage modelPackage;
+
+ /**
+ * Creates an instance of the adapter factory.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public PapyrusUMLNotationAdapterFactory() {
+ if (modelPackage == null) {
+ modelPackage = PapyrusUMLNotationPackage.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 PapyrusUMLNotationSwitch<Adapter> modelSwitch = new PapyrusUMLNotationSwitch<Adapter>() {
+ @Override
+ public Adapter caseUMLDiagram(UMLDiagram object) {
+ return createUMLDiagramAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLFrame(UMLFrame object) {
+ return createUMLFrameAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLShapeCompartment(UMLShapeCompartment object) {
+ return createUMLShapeCompartmentAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLShape(UMLShape object) {
+ return createUMLShapeAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLConnector(UMLConnector object) {
+ return createUMLConnectorAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLView(UMLView object) {
+ return createUMLViewAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLComponent(UMLComponent object) {
+ return createUMLComponentAdapter();
+ }
+
+ @Override
+ public Adapter caseUMLClassifierShape(UMLClassifierShape object) {
+ return createUMLClassifierShapeAdapter();
+ }
+
+ @Override
+ public Adapter caseEModelElement(EModelElement object) {
+ return createEModelElementAdapter();
+ }
+
+ @Override
+ public Adapter caseView(View object) {
+ return createViewAdapter();
+ }
+
+ @Override
+ public Adapter caseDiagram(Diagram object) {
+ return createDiagramAdapter();
+ }
+
+ @Override
+ public Adapter caseNode(Node object) {
+ return createNodeAdapter();
+ }
+
+ @Override
+ public Adapter caseStyle(Style object) {
+ return createStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseFontStyle(FontStyle object) {
+ return createFontStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseDescriptionStyle(DescriptionStyle object) {
+ return createDescriptionStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseFillStyle(FillStyle object) {
+ return createFillStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseLineStyle(LineStyle object) {
+ return createLineStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseRoundedCornersStyle(RoundedCornersStyle object) {
+ return createRoundedCornersStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseShapeStyle(ShapeStyle object) {
+ return createShapeStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseShape(Shape object) {
+ return createShapeAdapter();
+ }
+
+ @Override
+ public Adapter caseBasicDecorationNode(BasicDecorationNode object) {
+ return createBasicDecorationNodeAdapter();
+ }
+
+ @Override
+ public Adapter caseDecorationNode(DecorationNode object) {
+ return createDecorationNodeAdapter();
+ }
+
+ @Override
+ public Adapter caseDrawerStyle(DrawerStyle object) {
+ return createDrawerStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseBasicCompartment(BasicCompartment object) {
+ return createBasicCompartmentAdapter();
+ }
+
+ @Override
+ public Adapter caseCanonicalStyle(CanonicalStyle object) {
+ return createCanonicalStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseTitleStyle(TitleStyle object) {
+ return createTitleStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseCompartment(Compartment object) {
+ return createCompartmentAdapter();
+ }
+
+ @Override
+ public Adapter caseEdge(Edge object) {
+ return createEdgeAdapter();
+ }
+
+ @Override
+ public Adapter caseRoutingStyle(RoutingStyle object) {
+ return createRoutingStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseConnectorStyle(ConnectorStyle object) {
+ return createConnectorStyleAdapter();
+ }
+
+ @Override
+ public Adapter caseConnector(Connector object) {
+ return createConnectorAdapter();
+ }
+
+ @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.interoperability.rsa.umlnotation.UMLDiagram <em>UML Diagram</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.interoperability.rsa.umlnotation.UMLDiagram
+ * @generated
+ */
+ public Adapter createUMLDiagramAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame <em>UML Frame</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.interoperability.rsa.umlnotation.UMLFrame
+ * @generated
+ */
+ public Adapter createUMLFrameAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment <em>UML Shape Compartment</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.interoperability.rsa.umlnotation.UMLShapeCompartment
+ * @generated
+ */
+ public Adapter createUMLShapeCompartmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape <em>UML Shape</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.interoperability.rsa.umlnotation.UMLShape
+ * @generated
+ */
+ public Adapter createUMLShapeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector <em>UML Connector</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.interoperability.rsa.umlnotation.UMLConnector
+ * @generated
+ */
+ public Adapter createUMLConnectorAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView <em>UML View</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.interoperability.rsa.umlnotation.UMLView
+ * @generated
+ */
+ public Adapter createUMLViewAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent <em>UML Component</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.interoperability.rsa.umlnotation.UMLComponent
+ * @generated
+ */
+ public Adapter createUMLComponentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape <em>UML Classifier Shape</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.interoperability.rsa.umlnotation.UMLClassifierShape
+ * @generated
+ */
+ public Adapter createUMLClassifierShapeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.emf.ecore.EModelElement <em>EModel 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.emf.ecore.EModelElement
+ * @generated
+ */
+ public Adapter createEModelElementAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.View <em>View</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.gmf.runtime.notation.View
+ * @generated
+ */
+ public Adapter createViewAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Diagram <em>Diagram</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.gmf.runtime.notation.Diagram
+ * @generated
+ */
+ public Adapter createDiagramAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Node <em>Node</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.gmf.runtime.notation.Node
+ * @generated
+ */
+ public Adapter createNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Style <em>Style</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.gmf.runtime.notation.Style
+ * @generated
+ */
+ public Adapter createStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.FontStyle <em>Font Style</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.gmf.runtime.notation.FontStyle
+ * @generated
+ */
+ public Adapter createFontStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.DescriptionStyle <em>Description Style</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.gmf.runtime.notation.DescriptionStyle
+ * @generated
+ */
+ public Adapter createDescriptionStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.FillStyle <em>Fill Style</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.gmf.runtime.notation.FillStyle
+ * @generated
+ */
+ public Adapter createFillStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.LineStyle <em>Line Style</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.gmf.runtime.notation.LineStyle
+ * @generated
+ */
+ public Adapter createLineStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.RoundedCornersStyle <em>Rounded Corners Style</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.gmf.runtime.notation.RoundedCornersStyle
+ * @generated
+ */
+ public Adapter createRoundedCornersStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.ShapeStyle <em>Shape Style</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.gmf.runtime.notation.ShapeStyle
+ * @generated
+ */
+ public Adapter createShapeStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Shape <em>Shape</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.gmf.runtime.notation.Shape
+ * @generated
+ */
+ public Adapter createShapeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.BasicDecorationNode <em>Basic Decoration Node</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.gmf.runtime.notation.BasicDecorationNode
+ * @generated
+ */
+ public Adapter createBasicDecorationNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.DecorationNode <em>Decoration Node</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.gmf.runtime.notation.DecorationNode
+ * @generated
+ */
+ public Adapter createDecorationNodeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.DrawerStyle <em>Drawer Style</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.gmf.runtime.notation.DrawerStyle
+ * @generated
+ */
+ public Adapter createDrawerStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.BasicCompartment <em>Basic Compartment</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.gmf.runtime.notation.BasicCompartment
+ * @generated
+ */
+ public Adapter createBasicCompartmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.CanonicalStyle <em>Canonical Style</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.gmf.runtime.notation.CanonicalStyle
+ * @generated
+ */
+ public Adapter createCanonicalStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.TitleStyle <em>Title Style</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.gmf.runtime.notation.TitleStyle
+ * @generated
+ */
+ public Adapter createTitleStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Compartment <em>Compartment</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.gmf.runtime.notation.Compartment
+ * @generated
+ */
+ public Adapter createCompartmentAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Edge <em>Edge</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.gmf.runtime.notation.Edge
+ * @generated
+ */
+ public Adapter createEdgeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.RoutingStyle <em>Routing Style</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.gmf.runtime.notation.RoutingStyle
+ * @generated
+ */
+ public Adapter createRoutingStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.ConnectorStyle <em>Connector Style</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.gmf.runtime.notation.ConnectorStyle
+ * @generated
+ */
+ public Adapter createConnectorStyleAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.gmf.runtime.notation.Connector <em>Connector</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.gmf.runtime.notation.Connector
+ * @generated
+ */
+ public Adapter createConnectorAdapter() {
+ 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;
+ }
+
+} // PapyrusUMLNotationAdapterFactory
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusUMLNotationSwitch.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusUMLNotationSwitch.java
new file mode 100644
index 0000000..dcb507f
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src-gen/org/eclipse/papyrus/interoperability/rsa/umlnotation/util/PapyrusUMLNotationSwitch.java
@@ -0,0 +1,966 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.umlnotation.util;
+
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.util.Switch;
+import org.eclipse.gmf.runtime.notation.BasicCompartment;
+import org.eclipse.gmf.runtime.notation.BasicDecorationNode;
+import org.eclipse.gmf.runtime.notation.CanonicalStyle;
+import org.eclipse.gmf.runtime.notation.Compartment;
+import org.eclipse.gmf.runtime.notation.Connector;
+import org.eclipse.gmf.runtime.notation.ConnectorStyle;
+import org.eclipse.gmf.runtime.notation.DecorationNode;
+import org.eclipse.gmf.runtime.notation.DescriptionStyle;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.DrawerStyle;
+import org.eclipse.gmf.runtime.notation.Edge;
+import org.eclipse.gmf.runtime.notation.FillStyle;
+import org.eclipse.gmf.runtime.notation.FontStyle;
+import org.eclipse.gmf.runtime.notation.LineStyle;
+import org.eclipse.gmf.runtime.notation.Node;
+import org.eclipse.gmf.runtime.notation.RoundedCornersStyle;
+import org.eclipse.gmf.runtime.notation.RoutingStyle;
+import org.eclipse.gmf.runtime.notation.Shape;
+import org.eclipse.gmf.runtime.notation.ShapeStyle;
+import org.eclipse.gmf.runtime.notation.Style;
+import org.eclipse.gmf.runtime.notation.TitleStyle;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLClassifierShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLComponent;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLConnector;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLDiagram;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLFrame;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShape;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLShapeCompartment;
+import org.eclipse.papyrus.interoperability.rsa.umlnotation.UMLView;
+
+/**
+ * <!-- 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.interoperability.rsa.umlnotation.PapyrusUMLNotationPackage
+ * @generated
+ */
+public class PapyrusUMLNotationSwitch<T> extends Switch<T> {
+ /**
+ * The cached model package
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected static PapyrusUMLNotationPackage modelPackage;
+
+ /**
+ * Creates an instance of the switch.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public PapyrusUMLNotationSwitch() {
+ if (modelPackage == null) {
+ modelPackage = PapyrusUMLNotationPackage.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 PapyrusUMLNotationPackage.UML_DIAGRAM: {
+ UMLDiagram umlDiagram = (UMLDiagram) theEObject;
+ T result = caseUMLDiagram(umlDiagram);
+ if (result == null) {
+ result = caseDiagram(umlDiagram);
+ }
+ if (result == null) {
+ result = caseUMLView(umlDiagram);
+ }
+ if (result == null) {
+ result = caseView(umlDiagram);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlDiagram);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_FRAME: {
+ UMLFrame umlFrame = (UMLFrame) theEObject;
+ T result = caseUMLFrame(umlFrame);
+ if (result == null) {
+ result = caseUMLShape(umlFrame);
+ }
+ if (result == null) {
+ result = caseShape(umlFrame);
+ }
+ if (result == null) {
+ result = caseUMLView(umlFrame);
+ }
+ if (result == null) {
+ result = caseNode(umlFrame);
+ }
+ if (result == null) {
+ result = caseShapeStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseView(umlFrame);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseDescriptionStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseFillStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlFrame);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlFrame);
+ }
+ if (result == null) {
+ result = caseStyle(umlFrame);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_SHAPE_COMPARTMENT: {
+ UMLShapeCompartment umlShapeCompartment = (UMLShapeCompartment) theEObject;
+ T result = caseUMLShapeCompartment(umlShapeCompartment);
+ if (result == null) {
+ result = caseCompartment(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseUMLView(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseBasicCompartment(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseCanonicalStyle(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseTitleStyle(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseDecorationNode(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseDrawerStyle(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseBasicDecorationNode(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseStyle(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseNode(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseView(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlShapeCompartment);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_SHAPE: {
+ UMLShape umlShape = (UMLShape) theEObject;
+ T result = caseUMLShape(umlShape);
+ if (result == null) {
+ result = caseShape(umlShape);
+ }
+ if (result == null) {
+ result = caseUMLView(umlShape);
+ }
+ if (result == null) {
+ result = caseNode(umlShape);
+ }
+ if (result == null) {
+ result = caseShapeStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseView(umlShape);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseDescriptionStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseFillStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlShape);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlShape);
+ }
+ if (result == null) {
+ result = caseStyle(umlShape);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_CONNECTOR: {
+ UMLConnector umlConnector = (UMLConnector) theEObject;
+ T result = caseUMLConnector(umlConnector);
+ if (result == null) {
+ result = caseConnector(umlConnector);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseUMLView(umlConnector);
+ }
+ if (result == null) {
+ result = caseEdge(umlConnector);
+ }
+ if (result == null) {
+ result = caseConnectorStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseView(umlConnector);
+ }
+ if (result == null) {
+ result = caseRoutingStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlConnector);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlConnector);
+ }
+ if (result == null) {
+ result = caseStyle(umlConnector);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_VIEW: {
+ UMLView umlView = (UMLView) theEObject;
+ T result = caseUMLView(umlView);
+ if (result == null) {
+ result = caseView(umlView);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlView);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_COMPONENT: {
+ UMLComponent umlComponent = (UMLComponent) theEObject;
+ T result = caseUMLComponent(umlComponent);
+ if (result == null) {
+ result = caseUMLShape(umlComponent);
+ }
+ if (result == null) {
+ result = caseShape(umlComponent);
+ }
+ if (result == null) {
+ result = caseUMLView(umlComponent);
+ }
+ if (result == null) {
+ result = caseNode(umlComponent);
+ }
+ if (result == null) {
+ result = caseShapeStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseView(umlComponent);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseDescriptionStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseFillStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlComponent);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlComponent);
+ }
+ if (result == null) {
+ result = caseStyle(umlComponent);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ case PapyrusUMLNotationPackage.UML_CLASSIFIER_SHAPE: {
+ UMLClassifierShape umlClassifierShape = (UMLClassifierShape) theEObject;
+ T result = caseUMLClassifierShape(umlClassifierShape);
+ if (result == null) {
+ result = caseUMLShape(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseShape(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseUMLView(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseNode(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseShapeStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseView(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseFontStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseDescriptionStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseFillStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseLineStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseRoundedCornersStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseEModelElement(umlClassifierShape);
+ }
+ if (result == null) {
+ result = caseStyle(umlClassifierShape);
+ }
+ if (result == null) {
+ result = defaultCase(theEObject);
+ }
+ return result;
+ }
+ default:
+ return defaultCase(theEObject);
+ }
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Diagram</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>UML Diagram</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLDiagram(UMLDiagram object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Frame</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>UML Frame</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLFrame(UMLFrame object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Shape Compartment</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>UML Shape Compartment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLShapeCompartment(UMLShapeCompartment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Shape</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>UML Shape</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLShape(UMLShape object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Connector</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>UML Connector</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLConnector(UMLConnector object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML View</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>UML View</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLView(UMLView object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Component</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>UML Component</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLComponent(UMLComponent object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>UML Classifier Shape</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>UML Classifier Shape</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseUMLClassifierShape(UMLClassifierShape object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>EModel 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>EModel Element</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEModelElement(EModelElement object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>View</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</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseView(View object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Diagram</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>Diagram</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDiagram(Diagram object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Node</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>Node</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseNode(Node object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Style</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>Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStyle(Style object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Font Style</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>Font Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFontStyle(FontStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Description Style</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>Description Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDescriptionStyle(DescriptionStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Fill Style</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>Fill Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseFillStyle(FillStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Line Style</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>Line Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseLineStyle(LineStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Rounded Corners Style</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>Rounded Corners Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRoundedCornersStyle(RoundedCornersStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Shape Style</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>Shape Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseShapeStyle(ShapeStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Shape</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>Shape</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseShape(Shape object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Basic Decoration Node</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 Decoration Node</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBasicDecorationNode(BasicDecorationNode object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Decoration Node</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>Decoration Node</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDecorationNode(DecorationNode object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Drawer Style</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>Drawer Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseDrawerStyle(DrawerStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Basic Compartment</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 Compartment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseBasicCompartment(BasicCompartment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Canonical Style</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>Canonical Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCanonicalStyle(CanonicalStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Title Style</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>Title Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseTitleStyle(TitleStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Compartment</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>Compartment</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCompartment(Compartment object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Edge</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>Edge</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseEdge(Edge object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Routing Style</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>Routing Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseRoutingStyle(RoutingStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Connector Style</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>Connector Style</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConnectorStyle(ConnectorStyle object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Connector</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>Connector</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseConnector(Connector 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;
+ }
+
+} // PapyrusUMLNotationSwitch
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/Activator.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/Activator.java
new file mode 100644
index 0000000..3a0bf82
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/Activator.java
@@ -0,0 +1,69 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa;
+
+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.interoperability.rsa"; //$NON-NLS-1$
+
+ // The shared instance
+ private static Activator plugin;
+
+ public static LogHelper log;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ log = new LogHelper(this);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/blackbox/ProfileBaseHelper.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/blackbox/ProfileBaseHelper.java
new file mode 100644
index 0000000..7233e2b
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/blackbox/ProfileBaseHelper.java
@@ -0,0 +1,55 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.blackbox;
+
+
+import java.util.Properties;
+
+import org.eclipse.m2m.qvt.oml.blackbox.java.Operation;
+import org.eclipse.m2m.qvt.oml.blackbox.java.Operation.Kind;
+import org.eclipse.m2m.qvt.oml.util.IContext;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileConstraint;
+
+
+public class ProfileBaseHelper {
+
+ /** Key of the ConfigProperty containing the java.util.Properties for ProfileBase#messageKey mappings */
+ public static final String PROFILE_BASE_PROPERTIES = "profilebase.properties";
+
+ /**
+ * Reads the constraint's message from the ProfileBase properties file
+ * If the message is not found, the messageKey is returned
+ *
+ * @param context
+ * @param constraint
+ * The ProfileConstraint element (From ProfileBase profile)
+ * @return
+ * The ProfileConstraint's message (From the properties file), or the ProfileConstraint's messageKey if the message is not defined
+ */
+ @Operation(contextual = true, kind = Kind.QUERY, withExecutionContext = true)
+ public String getConstraintMessage(IContext context, ProfileConstraint constraint) {
+ String key = constraint.getMessageKey();
+
+ if(key == null) {
+ return null;
+ }
+
+ Object propertiesObject = context.getConfigProperty(PROFILE_BASE_PROPERTIES);
+ if(propertiesObject instanceof Properties) {
+ Properties properties = (Properties)propertiesObject;
+ return properties.getProperty(key, key);
+ }
+
+ return key;
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/blackbox/RTMappings.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/blackbox/RTMappings.java
new file mode 100644
index 0000000..724ae02
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/blackbox/RTMappings.java
@@ -0,0 +1,109 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.blackbox;
+
+import java.util.Collection;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.m2m.qvt.oml.blackbox.java.Operation;
+import org.eclipse.m2m.qvt.oml.blackbox.java.Operation.Kind;
+import org.eclipse.m2m.qvt.oml.util.IContext;
+import org.eclipse.uml2.common.util.CacheAdapter;
+import org.eclipse.uml2.uml.CallEvent;
+import org.eclipse.uml2.uml.Collaboration;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.LiteralString;
+import org.eclipse.uml2.uml.OpaqueExpression;
+import org.eclipse.uml2.uml.SignalEvent;
+import org.eclipse.uml2.uml.UMLFactory;
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * Implements the Blackbox mappings for RSARTToPapyrusRT
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class RTMappings {
+
+ @Operation(contextual = true, kind = Kind.MAPPING, withExecutionContext = true)
+ public static org.eclipse.uml2.uml.Class toClass(IContext context, Collaboration collaboration) {
+ return refactorType(context, collaboration, UMLPackage.eINSTANCE.getClass_(), org.eclipse.uml2.uml.Class.class);
+ }
+
+ @Operation(contextual = true, kind = Kind.MAPPING, withExecutionContext = true)
+ public static SignalEvent toSignalEvent(IContext context, CallEvent callEvent) {
+ return refactorType(context, callEvent, UMLPackage.eINSTANCE.getSignalEvent(), SignalEvent.class);
+ }
+
+ @Operation(contextual = true, kind = Kind.MAPPING, withExecutionContext = false)
+ public static LiteralString toLiteralString(OpaqueExpression expression) {
+ return refactorType(null, expression, UMLPackage.eINSTANCE.getLiteralString(), LiteralString.class);
+ }
+
+ // Not public to avoid confusing QVTo (Public methods are part of the Blackbox unit API)
+ private static <T extends Element> T refactorType(IContext context, EObject sourceElement, EClass targetEClass, java.lang.Class<T> resultType) {
+ // Retrieve the resource at the beginning, because the source element will be removed from its container at some point
+ // Resource resource = sourceElement.eResource();
+
+ // Create a Class and maintain the features (Attributes and References)
+ T result = resultType.cast(UMLFactory.eINSTANCE.create(targetEClass));
+ for (EStructuralFeature sourceFeature : sourceElement.eClass().getEAllStructuralFeatures()) {
+ EStructuralFeature targetFeature = result.eClass().getEStructuralFeature(sourceFeature.getName());
+ if (targetFeature != null && targetFeature.isChangeable() && sourceElement.eIsSet(sourceFeature)) {
+ result.eSet(targetFeature, sourceElement.eGet(sourceFeature));
+ }
+ }
+
+ // Fix incoming references
+ Collection<EStructuralFeature.Setting> incomingReferences = CacheAdapter.getInstance().getInverseReferences(sourceElement);
+ for (EStructuralFeature.Setting setting : incomingReferences) {
+ EStructuralFeature feature = setting.getEStructuralFeature();
+ if (feature.isChangeable() && feature.getEType().isInstance(result)) {
+ if (feature.isMany()) {
+ Object value = setting.get(true);
+ if (value instanceof Collection<?>) {
+ List<Object> copy = new LinkedList<Object>((Collection<?>) value);
+
+ while (true) {
+ int index = copy.indexOf(sourceElement);
+ if (index < 0) {
+ break;
+ }
+
+ copy.remove(index);
+ copy.add(index, result);
+ }
+
+ setting.set(copy);
+ }
+ } else {
+ setting.set(result);
+ }
+ }
+ }
+
+ // TODO: Keep the same XMI ID
+ // This algorithm doesn't work here, because the object has been added to a temporary resource (ModelExtent), which doesn't support IDs mapping
+ // We need to track the mapping somewhere else
+
+ // if(resource instanceof XMLResource) {
+ // XMLResource xmlResource = (XMLResource)resource;
+ // xmlResource.setID(result, xmlResource.getID(sourceElement));
+ // }
+ return result;
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ExecutorsPool.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ExecutorsPool.java
new file mode 100644
index 0000000..f44baad
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ExecutorsPool.java
@@ -0,0 +1,171 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.concurrent;
+
+import java.util.HashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.m2m.qvt.oml.TransformationExecutor;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+
+/**
+ * Thread safe pool of Transformation Executors
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class ExecutorsPool {
+
+ // The cache can be used to increase performances (For small and medium sized models, most of the execution time is spent in loading the transformation)
+ // Warning: using the cache prevents dynamic transformations (i.e. it should not be used in Debug Mode)
+ protected boolean cacheTransformations = true;
+
+ private final int poolSize;
+
+ public ExecutorsPool(int size) {
+ this.poolSize = size;
+ }
+
+ private final Map<URI, Pool> executors = new HashMap<URI, Pool>();
+
+ private final Map<TransformationExecutor, URI> executorsURIs = new HashMap<TransformationExecutor, URI>();
+
+ /**
+ * Gets an available executor for the given transformation URI. Creates it if needed,
+ * and we haven't reached the poolSize for this transformationURI
+ *
+ * Transformation executor needs to be released after usage
+ *
+ * @param transformationURI
+ * @return
+ */
+ public TransformationExecutor getExecutor(URI transformationURI) {
+ if (!cacheTransformations) {
+ return new Pool(transformationURI).createExecutor();
+ }
+
+ synchronized (executors) {
+ if (!executors.containsKey(transformationURI)) {
+ executors.put(transformationURI, new Pool(transformationURI));
+ }
+ }
+
+ Pool pool = executors.get(transformationURI);
+ return pool.getExecutor();
+ }
+
+ /**
+ * Preloads all instances for the given URI
+ *
+ * @param transformationURI
+ * @return
+ */
+ public synchronized IStatus preLoad(URI transformationURI) {
+ // Don't preload if there is no cache
+ if (!cacheTransformations) {
+ return Status.OK_STATUS;
+ }
+
+ synchronized (this) {
+ if (!executors.containsKey(transformationURI)) {
+ Pool pool = new Pool(transformationURI);
+ executors.put(transformationURI, pool);
+ pool.preload();
+ }
+ }
+
+ return Status.OK_STATUS;
+ }
+
+ /**
+ * Releases a transformation executor after usage
+ *
+ * @param executor
+ */
+ public void releaseExecutor(TransformationExecutor executor) {
+ if (!cacheTransformations) {
+ return;
+ }
+ URI transformationURI = executorsURIs.get(executor);
+ Pool pool = executors.get(transformationURI);
+ pool.release(executor);
+ }
+
+ private class Pool {
+ private List<TransformationExecutor> allExecutors = new LinkedList<TransformationExecutor>();
+
+ private List<TransformationExecutor> busyExecutors = new LinkedList<TransformationExecutor>();
+
+ private final URI transformationURI;
+
+ public Pool(URI transformationURI) {
+ this.transformationURI = transformationURI;
+ }
+
+ public void preload() {
+ for (int i = 0; i < poolSize; i++) {
+ createExecutor();
+ }
+ busyExecutors.clear();
+ }
+
+ public synchronized void release(TransformationExecutor executor) {
+ busyExecutors.remove(executor);
+ }
+
+ public TransformationExecutor getExecutor() {
+ while (true) {
+ synchronized (this) {
+ for (TransformationExecutor executor : allExecutors) {
+ if (isAvailable(executor)) {
+ return getExecutor(executor);
+ }
+ }
+
+ if (allExecutors.size() < poolSize) {
+ return createExecutor();
+ }
+ }
+
+ try {
+ Thread.sleep(25);
+ } catch (InterruptedException ex) {
+ Activator.log.error(ex);
+ return null;
+ }
+ }
+ }
+
+ private boolean isAvailable(TransformationExecutor executor) {
+ return !busyExecutors.contains(executor);
+ }
+
+ private TransformationExecutor getExecutor(TransformationExecutor executor) {
+ busyExecutors.add(executor);
+ return executor;
+ }
+
+ private TransformationExecutor createExecutor() {
+ TransformationExecutor executor = new TransformationExecutor(transformationURI);
+ executor.loadTransformation();
+ allExecutors.add(executor);
+ executorsURIs.put(executor, transformationURI);
+ return getExecutor(executor);
+ }
+
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ResourceAccessHelper.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ResourceAccessHelper.java
new file mode 100644
index 0000000..50ac6cf
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ResourceAccessHelper.java
@@ -0,0 +1,101 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.concurrent;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.concurrent.locks.Lock;
+import java.util.concurrent.locks.ReadWriteLock;
+import java.util.concurrent.locks.ReentrantReadWriteLock;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+
+/**
+ * This class is used to synchronize access to physical EMF Resources (Load/Save)
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class ResourceAccessHelper {
+ public static ResourceAccessHelper INSTANCE = new ResourceAccessHelper();
+
+ private final Map<URI, ReadWriteLock> locks = new HashMap<URI, ReadWriteLock>();
+
+ private ResourceAccessHelper() {
+ // Singleton
+ }
+
+ private Lock getSaveLock(Resource resource) {
+ ReadWriteLock lock = getLock(resource);
+ return lock.writeLock();
+ }
+
+ private Lock getLoadLoack(Resource resource) {
+ ReadWriteLock lock = getLock(resource);
+ return lock.readLock();
+ }
+
+ /**
+ * Saves a resource in a thread-safe way. Ensures that the underlying physical
+ * resource is not being read during the save action
+ *
+ * @param resource
+ * @param options
+ * @throws IOException
+ */
+ public void saveResource(Resource resource, Map<?, ?> options) throws IOException {
+ Lock lock = getSaveLock(resource);
+ lock.lock();
+ try {
+ resource.save(options);
+ } finally {
+ lock.unlock();
+ }
+ }
+
+ /**
+ * Loads a resource in a thread-safe way. Ensures that the underlying physical
+ * resource is not being saved during the load action. Concurrent read operations
+ * may still happen
+ *
+ * @param resource
+ * @param options
+ * @throws IOException
+ */
+ public void loadResource(Resource resource, Map<?, ?> options) throws IOException {
+ Lock lock = getLoadLoack(resource);
+ lock.lock();
+ try {
+ resource.load(options);
+ } finally {
+ lock.unlock();
+ }
+ }
+
+ private ReadWriteLock getLock(Resource resource) {
+ URI uri = resource.getURI();
+ if (uri == null) {
+ return null;
+ }
+
+ synchronized (this) {
+ if (!locks.containsKey(uri)) {
+ locks.put(uri, new ReentrantReadWriteLock());
+ }
+
+ return locks.get(uri);
+ }
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ThreadSafeModelSet.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ThreadSafeModelSet.java
new file mode 100644
index 0000000..015c1f2
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ThreadSafeModelSet.java
@@ -0,0 +1,33 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.concurrent;
+
+import java.io.IOException;
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.infra.core.utils.DiResourceSet;
+
+/**
+ * A ModelSet with thread-safe load operations
+ *
+ * Note: since Save operations are delegated to IModels, save operations are <strong>thread-safe</strong>.
+ * Resources of this ResourceSet should be saved by delegating to {@link ResourceAccessHelper#saveResource(Resource, Map<?, ?>)}
+ *
+ * @see {@link ResourceAccessHelper}
+ */
+public class ThreadSafeModelSet extends DiResourceSet {
+ @Override
+ protected void demandLoad(Resource resource) throws IOException {
+ Resource resourceWithOptions = setResourceOptions(resource);
+ ResourceAccessHelper.INSTANCE.loadResource(resourceWithOptions, getLoadOptions());
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ThreadSafeResourceSet.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ThreadSafeResourceSet.java
new file mode 100644
index 0000000..b2544e5
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/concurrent/ThreadSafeResourceSet.java
@@ -0,0 +1,33 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.concurrent;
+
+import java.io.IOException;
+
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+
+/**
+ * A ResourceSet with thread-safe Load operations
+ *
+ * Resources should be saved using {@link ResourceAccessHelper#saveResource(Resource, java.util.Map)}
+ *
+ * @author Camille Letavernier
+ *
+ * @see {@link ResourceAccessHelper}
+ */
+public class ThreadSafeResourceSet extends ResourceSetImpl {
+ @Override
+ protected void demandLoad(Resource resource) throws IOException {
+ ResourceAccessHelper.INSTANCE.loadResource(resource, getLoadOptions());
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/constants/TransformationWizardConstants.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/constants/TransformationWizardConstants.java
new file mode 100644
index 0000000..a3b7a1d
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/constants/TransformationWizardConstants.java
@@ -0,0 +1,47 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.constants;
+
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+
+/**
+ * Constants used in the wizard
+ */
+public interface TransformationWizardConstants {
+
+ /**
+ * The extensions used in the default filters
+ */
+ public static final String[] EXTENSIONS = { "*", "*.emx", "*.epx", "*.epx;*.emx" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+
+ public static final String[] EXTENSIONS_NAMES = { "All", "*.emx", "*.epx", "*.epx and *.emx" }; //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$
+
+ /**
+ * The name used for the settings file
+ */
+ public static final String TRANSFORMATION_WIZARD_SETTINGS = Activator.PLUGIN_ID + "Wizard.lastUnselection"; //$NON-NLS-1$
+
+ /**
+ * The key to retrieve the selection preferences from the settings file
+ */
+ public static final String WIZARD_SELECTION_KEY = "selectionPeferences"; //$NON-NLS-1$
+
+ public static final String FILEDIALOG_SELECTION_KEY = "previousDialogSelection"; //$NON-NLS-1$
+
+ /**
+ * The name of the newly created project's folders
+ */
+ public static final String SRC_FOLDER = "src"; //$NON-NLS-1$
+
+ public static final String RSC_FOLDER = "resources"; //$NON-NLS-1$
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/handler/ImportHandler.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/handler/ImportHandler.java
new file mode 100644
index 0000000..cba0f33
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/handler/ImportHandler.java
@@ -0,0 +1,154 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2017 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 505330
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.handler;
+
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+import java.util.concurrent.atomic.AtomicBoolean;
+
+import org.eclipse.core.commands.AbstractHandler;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.papyrus.infra.properties.ui.creation.PropertyEditorFactory;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory;
+import org.eclipse.papyrus.interoperability.rsa.internal.ConfigurationManager;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformationLauncher;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.handlers.HandlerUtil;
+
+
+public class ImportHandler extends AbstractHandler {
+
+ @Override
+ public Object execute(ExecutionEvent event) throws ExecutionException {
+ ISelection selection = HandlerUtil.getCurrentSelection(event);
+ if (selection == null || selection.isEmpty()) {
+ return null;
+ }
+
+ Set<IFile> filesToImport = new HashSet<IFile>();
+
+ if (selection instanceof IStructuredSelection) {
+ IStructuredSelection structuredSelection = (IStructuredSelection) selection;
+ Iterator<?> selectionIterator = structuredSelection.iterator();
+ while (selectionIterator.hasNext()) {
+ Object selectedElement = selectionIterator.next();
+ if (selectedElement instanceof IAdaptable) {
+ IFile selectedFile = ((IAdaptable) selectedElement).getAdapter(IFile.class);
+ if (selectedFile == null) {
+ continue;
+ }
+
+ // EFX files can be selected (Makes it easier to select a set of files),
+ // but they will be imported by their parent model
+ String fileExtension = selectedFile.getFileExtension();
+ if ("epx".equals(fileExtension) || "emx".equals(fileExtension)) { //$NON-NLS-1$ //$NON-NLS-2$
+ filesToImport.add(selectedFile);
+ }
+ }
+ }
+ }
+
+ if (filesToImport.isEmpty()) {
+ Activator.log.warn("The selection doesn't contain any *.epx nor *.emx file");
+ } else {
+ importFiles(filesToImport, event);
+ }
+
+ return null;
+ }
+
+ public void importFiles(Set<IFile> selectedFiles, ExecutionEvent event) {
+ Config config = getTransformationParameters(event);
+
+ if (config == null) {
+ return;
+ }
+
+ List<URI> urisToImport = new LinkedList<URI>();
+
+ for (IFile selectedFile : selectedFiles) {
+ URI uri = URI.createPlatformResourceURI(selectedFile.getFullPath().toString(), true);
+
+ urisToImport.add(uri);
+ }
+
+ // The Event's control is (or may be) a Context Menu, which will be disposed soon: retrieve its own parent instead (The main Window), if it has one.
+ Control baseControl = HandlerUtil.getActiveShell(event);
+ if (baseControl != null && !baseControl.isDisposed() && baseControl.getParent() != null) {
+ baseControl = baseControl.getParent();
+ }
+
+ // On some platforms, it seems that the ActiveShell (Context Menu) may already be disposed (Bug 455011). Use the Active Workbench Window directly
+ if (baseControl == null || baseControl.isDisposed()) {
+ baseControl = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+ }
+
+ ImportTransformationLauncher launcher = new ImportTransformationLauncher(config, baseControl);
+ launcher.run(urisToImport);
+ }
+
+ public Config getTransformationParameters(ExecutionEvent event) {
+ Config config = RSAToPapyrusParametersFactory.eINSTANCE.createConfig();
+ ConfigurationManager configMan = new ConfigurationManager();
+ configMan.loadConfig(config);
+
+ Shell activeShell = HandlerUtil.getActiveShell(event);
+
+ final AtomicBoolean okPressed = new AtomicBoolean(true);
+ PropertyEditorFactory factory = new PropertyEditorFactory() {
+ @Override
+ public String getEditionDialogTitle(Object objectToEdit) {
+ return "Transformation parameters";
+ }
+
+ @Override
+ protected void handleEditCancelled(Control widget, Object source) {
+ okPressed.set(false);
+ super.handleEditCancelled(widget, source);
+ }
+ };
+
+ Object result = factory.edit(activeShell, config);
+
+ if (!okPressed.get()) {
+ configMan.dispose();
+ return null;
+ }
+
+ // Result can be null, the source config, or a new config
+ if (result instanceof Config) {
+ config = (Config) result;
+ }
+
+ configMan.saveConfig(config);
+ configMan.dispose();
+
+ return config;
+ }
+
+
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/ConfigurationManager.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/ConfigurationManager.java
new file mode 100644
index 0000000..6d05d40
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/ConfigurationManager.java
@@ -0,0 +1,97 @@
+/*****************************************************************************
+ * Copyright (c) 2017 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.internal;
+
+import java.io.IOException;
+
+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.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory;
+
+/**
+ * Persistence manager for the basic import configuration properties.
+ */
+public class ConfigurationManager {
+
+ private ResourceSet rset = new ResourceSetImpl();
+ private Resource configResource;
+ private Config config;
+
+ public ConfigurationManager() {
+ super();
+
+ // Load or create the configuration resource in the workspace metadata
+ URI configURI = URI.createFileURI(Activator.getDefault().getStateLocation().toOSString())
+ .appendSegment("config.xmi"); //$NON-NLS-1$
+ try {
+ configResource = rset.getResource(configURI, true);
+ } catch (Exception e) {
+ // Doesn't exist. Fine. We insist
+ configResource = rset.getResource(configURI, false);
+ }
+
+ // Get or create the configuration in the configuration resource
+ EList<EObject> contents = configResource.getContents();
+ if (!contents.isEmpty() && (contents.get(0) instanceof Config)) {
+ config = (Config) contents.get(0);
+ } else {
+ config = RSAToPapyrusParametersFactory.eINSTANCE.createConfig();
+ contents.clear();
+ contents.add(config);
+ }
+ }
+
+ public void dispose() {
+ config = null;
+ configResource = null;
+ EMFHelper.unload(rset);
+ }
+
+ public void loadConfig(Config config) {
+ EcoreUtil.Copier copier = new EcoreUtil.Copier() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected EObject createCopy(EObject eObject) {
+ return (eObject == ConfigurationManager.this.config)
+ ? config
+ : super.createCopy(eObject);
+ }
+ };
+
+ copier.copy(this.config);
+ }
+
+ public void saveConfig(Config newConfig) {
+ try {
+ if (newConfig == null) {
+ // Delete the saved configuration
+ configResource.delete(null);
+ } else if (!EcoreUtil.equals(config, newConfig)) {
+ EcoreUtil.replace(config, EcoreUtil.copy(newConfig));
+ configResource.save(null);
+ }
+ } catch (IOException e) {
+ Activator.log.error(e);
+ }
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/extension/PostProcessExtension.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/extension/PostProcessExtension.java
new file mode 100644
index 0000000..9cb375f
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/extension/PostProcessExtension.java
@@ -0,0 +1,64 @@
+/*****************************************************************************
+ * Copyright (c) 2017 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.internal.extension;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.m2m.qvt.oml.ExecutionContext;
+
+/**
+ * <p>
+ * Extension to the RSA-to-Papyrus transformation's post-processing phase
+ * for dependency migration and stereotype repair. {@link TransformationExtension}s
+ * may additionally implement this interface to be invoked after all other
+ * post-processing is done by the core import framework.
+ * </p>
+ * <p>
+ * This is provisional API.
+ * </p>
+ */
+public interface PostProcessExtension extends TransformationExtension {
+ /**
+ * <p>
+ * Post-processes the completed imported model. This method is invoked in the
+ * context of a write transaction, so the implementation is free to make any
+ * edits to the model directly, without the use of commands. Note that this
+ * does imply that the changes made to the model are not undoable and cannot
+ * be rolled back in case of any failure.
+ * </p>
+ * <p>
+ * <b>Note</b> also that this post-processing is performed in different resource
+ * set to the one in which the base transformation extensions are performed.
+ * Therefore, before this method is invoked, the receiver will have been
+ * assigned a new {@link #setResourceSet(ResourceSet) resourceSet}.
+ * </p>
+ *
+ * @param context
+ * the QVTo execution context
+ * @param monitor
+ * for optional reporting of progress if the post-processing is
+ * expected to be a long-running operation. This is a private
+ * monitor for the extension that should be started and finished
+ * as usual. So, the {@linkplain #getNumberOfSteps() number of steps}
+ * reported by the base transformation must not include this
+ * post-processing phase
+ *
+ * @return a status indicating success or problems
+ *
+ * @see #setResourceSet(ResourceSet)
+ * @see #getNumberOfSteps()
+ */
+ IStatus postProcess(ExecutionContext context, IProgressMonitor monitor);
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/extension/TransformationExtension.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/extension/TransformationExtension.java
new file mode 100644
index 0000000..5d8edda
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/extension/TransformationExtension.java
@@ -0,0 +1,94 @@
+/*****************************************************************************
+ * Copyright (c) 2015, 2017 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 505330
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.internal.extension;
+
+import java.util.Set;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.m2m.qvt.oml.ExecutionContext;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ExecutorsPool;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformation;
+
+/**
+ * Extension to the RSA-to-Papyrus model transformation
+ *
+ * Provisional API
+ *
+ * @author Camille Letavernier
+ *
+ */
+public interface TransformationExtension {
+ /**
+ * Invoked only once when the extension is loaded for the first time (Before any execution)
+ *
+ * @return
+ * The source EPackages required by this transformation (Typically source profile definitions)
+ */
+ public Set<EPackage> getAdditionalSourceEPackages();
+
+ /**
+ * The resource set used by the main transformation. Contains the source and target resources
+ *
+ * @param resourceSet
+ */
+ public void setResourceSet(ResourceSet resourceSet);
+
+ /**
+ * The ExecutorsPool used for manipulating parallel QVTo transformations
+ *
+ * @param executorsPool
+ */
+ public void setExecutorsPool(ExecutorsPool executorsPool);
+
+ /**
+ *
+ * @param importTransformation
+ */
+ public void setTransformation(ImportTransformation importTransformation);
+
+ /**
+ * Part of the transformation that is executed before the main transformation's semantics and graphics import
+ *
+ * @param context
+ * The QVTo execution context
+ * @param monitor
+ * The current progress monitor. The monitor is reused from the main transformation; only use subtask/worked methods
+ * @return
+ */
+ public IStatus executeBefore(ExecutionContext context, IProgressMonitor monitor);
+
+ /**
+ * Part of the transformation that is executed after both the semantics and graphics have been imported
+ *
+ * @param context
+ * The QVTo execution context
+ * @param monitor
+ * The current progress monitor. The monitor is reused from the main transformation; only use subtask/worked methods
+ * @return
+ */
+ public IStatus executeAfter(ExecutionContext context, IProgressMonitor monitor);
+
+ /**
+ * The number of work steps required by this transformation. Corresponds to the total number of worked() you can invoke in executeBefore/executeAfter.
+ * This does not include any work that is done in optional extensions such as {@link PostProcessExtension}.
+ *
+ * @return the total number of steps consumed from the shared progress monitor in
+ * my {@link #executeBefore(ExecutionContext, IProgressMonitor) executeBefore} and
+ * {@link #executeAfter(ExecutionContext, IProgressMonitor) executeAfter}
+ */
+ public int getNumberOfSteps();
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/JobWrapper.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/JobWrapper.java
new file mode 100644
index 0000000..d4a8c49
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/JobWrapper.java
@@ -0,0 +1,44 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.internal.schedule;
+
+import org.eclipse.core.runtime.jobs.Job;
+
+public class JobWrapper implements Schedulable {
+
+ protected final Job job;
+
+ public JobWrapper(Job job) {
+ this.job = job;
+ }
+
+ @Override
+ public void start() {
+ job.schedule();
+ }
+
+ @Override
+ public boolean isComplete() {
+ return job.getResult() != null;
+ }
+
+ @Override
+ public String getName() {
+ return job.getName();
+ }
+
+ @Override
+ public void cancel() {
+ job.cancel();
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/Schedulable.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/Schedulable.java
new file mode 100644
index 0000000..7fe2bde
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/Schedulable.java
@@ -0,0 +1,44 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.internal.schedule;
+
+/**
+ * Minimal API for schedulable tasks
+ *
+ * @author Camille Letavernier
+ *
+ */
+public interface Schedulable {
+ /**
+ *
+ * @return true if the task is complete
+ */
+ public boolean isComplete();
+
+ /**
+ *
+ * @return the label of the tasks
+ */
+ public String getName();
+
+ /**
+ * Starts the task. The implementation should start in a separate thread (e.g. via a Job)
+ */
+ public void start();
+
+ /**
+ * Requests the task to cancel. The task may not be canceled immediately; invoker should wait
+ * for isComplete() to return true after invoking this method
+ */
+ public void cancel();
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/Scheduler.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/Scheduler.java
new file mode 100644
index 0000000..6ab8534
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/Scheduler.java
@@ -0,0 +1,126 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.internal.schedule;
+
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+
+/**
+ * Executes a number of parallel tasks on the specified (maximum) amount of threads
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class Scheduler {
+
+ protected int maxThreads;
+
+ public Scheduler(int maxThreads) {
+ this.maxThreads = Math.max(1, maxThreads);
+ }
+
+ public void schedule(IProgressMonitor monitor, List<? extends Schedulable> tasks) {
+
+ List<Schedulable> remainingTasks = new LinkedList<Schedulable>(tasks);
+ List<Schedulable> runningTasks = new LinkedList<Schedulable>();
+
+ while (!remainingTasks.isEmpty()) {
+ if (monitor.isCanceled()) {
+ monitor.subTask("Canceling remaining jobs...");
+ for (Schedulable task : runningTasks) {
+ task.cancel();
+ }
+ remainingTasks.clear(); // Don't start these transformations at all
+ // Keep waiting: the cancel operation is asynchronous, we still need to wait for the jobs to complete
+ }
+
+ // Schedule transformations if we have enough threads and they have not all been scheduled
+ while (runningTasks.size() < maxThreads && !remainingTasks.isEmpty()) {
+ final Schedulable task = remainingTasks.remove(0); // Get and remove
+ task.start();
+ runningTasks.add(task);
+ }
+
+ if (!runningTasks.isEmpty()) {
+ String waitFor = runningTasks.get(0).getName();
+ monitor.subTask("Waiting for Import " + waitFor + " to complete...");
+ }
+
+ // We can continue if at least one transformation is complete (Leaving a free Thread)
+ boolean canContinue = false;
+
+ Iterator<Schedulable> iterator = runningTasks.iterator();
+ while (iterator.hasNext()) {
+ Schedulable runningTask = iterator.next();
+ if (runningTask.isComplete()) {
+ canContinue = true;
+ iterator.remove();
+ monitor.worked(1);
+ }
+ }
+
+ if (!canContinue) {
+ try {
+ Thread.sleep(100);
+ } catch (InterruptedException ex) {
+ Activator.log.error(ex);
+ }
+ }
+ }
+
+ // All transformations have been scheduled (But not necessarily completed): wait for all of them to complete
+ wait(runningTasks, monitor);
+ }
+
+
+ // Wait for all (remaining) import transformations to complete
+ protected void wait(List<Schedulable> tasks, IProgressMonitor monitor) {
+
+ // Transformations still running
+ List<Schedulable> runningTasks = new LinkedList<Schedulable>(tasks);
+
+ while (!runningTasks.isEmpty()) {
+ if (monitor.isCanceled()) {
+ monitor.subTask("Canceling remaining jobs...");
+ for (Schedulable task : runningTasks) {
+ task.cancel();
+ }
+ // Keep waiting: the cancel operation is asynchronous, we still need to wait for the jobs to complete
+ }
+
+ Iterator<Schedulable> iterator = runningTasks.iterator();
+ while (iterator.hasNext()) {
+ Schedulable task = iterator.next();
+ if (task.isComplete()) {
+ iterator.remove();
+ monitor.worked(1);
+ }
+ }
+
+ if (!runningTasks.isEmpty()) {
+ String waitFor = runningTasks.get(0).getName();
+ monitor.subTask("Waiting for " + waitFor + " to complete...");
+
+ try {
+ Thread.sleep(100);
+ } catch (InterruptedException ex) {
+ Activator.log.error(ex);
+ return;
+ }
+ }
+ }
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/TransformationWrapper.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/TransformationWrapper.java
new file mode 100644
index 0000000..8e0e796
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/internal/schedule/TransformationWrapper.java
@@ -0,0 +1,44 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.internal.schedule;
+
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformation;
+
+public class TransformationWrapper implements Schedulable {
+
+ protected ImportTransformation transformation;
+
+ public TransformationWrapper(ImportTransformation transformation) {
+ this.transformation = transformation;
+ }
+
+ @Override
+ public boolean isComplete() {
+ return transformation.isComplete();
+ }
+
+ @Override
+ public String getName() {
+ return transformation.getModelName();
+ }
+
+ @Override
+ public void start() {
+ transformation.run(false);
+ }
+
+ @Override
+ public void cancel() {
+ transformation.cancel();
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/messages/Messages.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/messages/Messages.java
new file mode 100644
index 0000000..6f28b70
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/messages/Messages.java
@@ -0,0 +1,43 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.messages;
+
+import org.eclipse.osgi.util.NLS;
+
+/**
+ * UI text to externalize
+ */
+public class Messages extends NLS {
+
+ private static final String BUNDLE_NAME = "org.eclipse.papyrus.interoperability.rsa.messages.messages"; //$NON-NLS-1$
+ public static String TransformationWizard_Title;
+ public static String TransformationSelectionPage_Name;
+ public static String TransformationSelectionPage_Title;
+ public static String TransformationSelectionPage_Description;
+ public static String FileDialogTitle;
+ public static String TransformationConfigPage_Name;
+ public static String TransformationConfigPage_Title;
+ public static String TransformationConfigPage_Description;
+ public static String Button_SelectAll;
+ public static String Button_DeselectAll;
+ public static String Button_FileSystemSelection;
+ public static String MultipleStringFileEditor_2;
+ public static String WrongFileType;
+
+ static {
+ // initialize resource bundle
+ NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+ }
+
+ private Messages() {
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/messages/messages.properties b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/messages/messages.properties
new file mode 100644
index 0000000..588fc28
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/messages/messages.properties
@@ -0,0 +1,26 @@
+###############################################################################
+# Copyright (c) 2010, 2014 CEA LIST and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License v1.0
+# which accompanies this distribution, and is available at
+# http://www.eclipse.org/legal/epl-v10.html
+#
+# Contributors:
+# Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+#
+###############################################################################
+
+TransformationWizard_Title=RSA transformation wizard
+TransformationSelectionPage_Name=Workspace selection
+TransformationSelectionPage_Title=Select a scope for the transformation
+TransformationSelectionPage_Description=Select the folders or files for the transformation
+FileDialogTitle=Select the files to import
+TransformationConfigPage_Name=Parameters selection
+TransformationConfigPage_Title=Define the transformation parameters
+TransformationConfigPage_Description=Select the files and the configuration options for the transformation
+Button_SelectAll=Select All
+Button_DeselectAll=Deselect All
+Button_FileSystemSelection=File System Selection
+MultipleStringFileEditor_2=FilterExtensions and FilterNames do not match
+WrongFileType=Not an IFile, wrong type to transform
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/DependencyAnalysisHelper.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/DependencyAnalysisHelper.java
new file mode 100644
index 0000000..92c24c3
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/DependencyAnalysisHelper.java
@@ -0,0 +1,474 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.transformation;
+
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Map.Entry;
+import java.util.Set;
+
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+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.resource.impl.ResourceSetImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.xmi.XMLResource;
+import org.eclipse.emf.ecore.xml.type.AnyType;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ThreadSafeResourceSet;
+import org.eclipse.papyrus.uml.extensionpoints.library.IRegisteredLibrary;
+import org.eclipse.papyrus.uml.extensionpoints.library.RegisteredLibrary;
+import org.eclipse.papyrus.uml.extensionpoints.profile.IRegisteredProfile;
+import org.eclipse.papyrus.uml.extensionpoints.profile.RegisteredProfile;
+import org.eclipse.uml2.uml.Element;
+
+import com.google.common.collect.Sets;
+
+public class DependencyAnalysisHelper {
+
+ protected final Config config;
+
+ protected final static Set<String> rsaExtensions = Sets.newHashSet("emx", "efx"); //$NON-NLS-1$ //$NON-NLS-2$
+
+ protected final static String rsaProfileExtension = "epx"; //$NON-NLS-1$
+
+ // ResourceSet used to load and explore Static Libraries
+ protected final ResourceSet localResourceSet = new ThreadSafeResourceSet();
+
+ // Store the broken URIs without trying to resolve them. We don't have enough information to resolve them during the first phase of the model import
+ // The Key is the resource URI, the value is the Set of each individual EObject Fragment (We need the EObject fragments to find potential matches)
+ protected final Map<URI, Set<String>> brokenUris = new HashMap<URI, Set<String>>();
+
+ protected final Set<URI> brokenProfiles = new HashSet<URI>();
+
+ public DependencyAnalysisHelper(Config config) {
+ this.config = config;
+
+ configureResourceSet();
+ }
+
+ protected void configureResourceSet() {
+ localResourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_ATTACHMENT, true);
+ localResourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_IDREF_RESOLUTION, true);
+ localResourceSet.getLoadOptions().put(XMLResource.OPTION_RECORD_UNKNOWN_FEATURE, Boolean.TRUE);
+ localResourceSet.getLoadOptions().put(XMLResource.OPTION_USE_PACKAGE_NS_URI_AS_LOCATION, Boolean.FALSE);
+ }
+
+ protected void unloadResourceSet() {
+ EMFHelper.unload(localResourceSet);
+ }
+
+ public void computeURIMappings(Collection<Resource> sourceModels) {
+ for (Resource sourceModel : sourceModels) {
+ doComputeURIMappings(sourceModel);
+ }
+ }
+
+ public synchronized void resolveAllMappings(Map<URI, URI> urisToReplace, Map<URI, URI> profileUrisToReplace) {
+ if (config.getMappingParameters() == null) {
+ config.setMappingParameters(RSAToPapyrusParametersFactory.eINSTANCE.createMappingParameters());
+ }
+
+ try {
+ for (Entry<URI, Set<String>> resourceToRepair : brokenUris.entrySet()) {
+
+ // Already known mapping
+ if (urisToReplace.containsKey(resourceToRepair.getKey())) {
+ continue;
+ }
+ findMatch(resourceToRepair.getKey(), resourceToRepair.getValue());
+ }
+
+ for (URI profileDefinition : brokenProfiles) {
+
+ // Already known mapping
+ if (profileUrisToReplace.containsKey(profileDefinition.trimFragment().trimQuery())) {
+ continue;
+ }
+ findMatch(profileDefinition);
+ }
+ } finally {
+ unloadResourceSet();
+ brokenUris.clear();
+ brokenProfiles.clear();
+ }
+ }
+
+ protected void findMatch(URI resourceURI, Set<String> fragments) {
+ URIMapping mapping = null;
+
+ for (String fragment : fragments) {
+ URI eObjectURI = resourceURI.appendFragment(fragment);
+ mapping = findExistingMapping(eObjectURI, localResourceSet);
+
+ if (mapping != null) {
+ break;
+ }
+ }
+
+ if (mapping == null) {
+ mapping = RSAToPapyrusParametersFactory.eINSTANCE.createURIMapping();
+ mapping.setSourceURI(resourceURI.toString());
+ mapping.setTargetURI(mapping.getSourceURI());
+ }
+
+ config.getMappingParameters().getUriMappings().add(mapping);
+ }
+
+ protected void findMatch(URI profileDefinitionURI) {
+ URIMapping match = findExistingProfileMapping(profileDefinitionURI, localResourceSet);
+
+ if (match == null) {
+ match = RSAToPapyrusParametersFactory.eINSTANCE.createURIMapping();
+ match.setSourceURI(profileDefinitionURI.trimFragment().trimQuery().toString());
+ match.setTargetURI(match.getSourceURI());
+ }
+
+ config.getMappingParameters().getProfileUriMappings().add(match);
+ }
+
+ protected void doComputeURIMappings(Resource sourceModel) {
+ doComputeProfileURIMappings(sourceModel);
+
+ TreeIterator<EObject> resourceContents = sourceModel.getAllContents();
+ ResourceSet resourceSet = sourceModel.getResourceSet();
+
+ while (resourceContents.hasNext()) {
+ EObject next = resourceContents.next();
+ for (EReference reference : next.eClass().getEAllReferences()) {
+ if (reference.isContainer() || reference.isContainment() || reference.isDerived() || reference.isTransient()) {
+ continue;
+ }
+
+ Object value = next.eGet(reference, false);
+ if (value instanceof EObject) {
+ handleURIMapping((EObject) value, resourceSet);
+ } else if (value instanceof Collection<?>) {
+ for (Object element : (Collection<?>) value) {
+ if (element instanceof EObject) {
+ handleURIMapping((EObject) element, resourceSet);
+ }
+ }
+ }
+ }
+ }
+ }
+
+ protected void doComputeProfileURIMappings(Resource sourceModel) {
+ ResourceSet resourceSet = sourceModel.getResourceSet();
+
+ for (EObject rootObject : sourceModel.getContents()) {
+ if (isInvalidStereotypeApplication(rootObject)) {
+ handleProfileURIMapping(rootObject, resourceSet);
+ }
+ }
+ }
+
+ protected boolean isInvalidStereotypeApplication(EObject eObject) {
+ if (eObject instanceof Element) {
+ return false;
+ }
+
+ // The package is not resolved: probably a missing profile
+ if (eObject instanceof AnyType) {
+ return true;
+ }
+
+ // If the package is resolved but is contained in an EPX resource, it needs to be mapped to the Papyrus equivalent
+ EPackage ePackage = eObject.eClass().getEPackage();
+ if ("epx".equals(ePackage.eResource().getURI().fileExtension())) {
+ return true;
+ }
+
+ return false;
+ }
+
+ protected boolean isRSAModelElement(EObject eObject) {
+ return isRSAModelElement(EcoreUtil.getURI(eObject));
+ }
+
+ protected boolean isRSAModelElement(URI objectURI) {
+ String fileExtension = objectURI.fileExtension();
+ return rsaExtensions.contains(fileExtension) || rsaProfileExtension.equals(fileExtension);
+ }
+
+ protected synchronized Set<String> getFragments(URI resourceURI) {
+ if (!brokenUris.containsKey(resourceURI)) {
+ brokenUris.put(resourceURI, new HashSet<String>());
+ }
+
+ return brokenUris.get(resourceURI);
+ }
+
+ protected synchronized void handleBrokenReference(EObject proxy) {
+ URI proxyURI = EcoreUtil.getURI(proxy);
+ URI resourceURI = proxyURI.trimFragment().trimQuery();
+
+ String fragment = proxyURI.fragment();
+ Set<String> fragments = getFragments(resourceURI);
+ fragments.add(fragment);
+ }
+
+ protected synchronized void addBrokenProfileDefinition(URI packageURI) {
+ brokenProfiles.add(packageURI);
+ }
+
+
+ protected void handleProfileURIMapping(EObject stereotypeApplication, ResourceSet resourceSet) {
+
+ EPackage profileDefinition = stereotypeApplication.eClass().getEPackage();
+ URI packageURI = EcoreUtil.getURI(profileDefinition);
+ if (packageURI.trimFragment().isEmpty()) {
+ packageURI = URI.createURI(profileDefinition.getNsURI());
+ }
+ addBrokenProfileDefinition(packageURI);
+
+ }
+
+ protected void handleURIMapping(EObject eObject, ResourceSet resourceSet) {
+
+ if (isRSAModelElement(eObject)) {
+ handleBrokenReference(eObject);
+ return;
+ }
+
+ if (eObject.eIsProxy()) {
+ eObject = EcoreUtil.resolve(eObject, resourceSet);
+ if (eObject.eIsProxy()) {
+ handleBrokenReference(eObject);
+ return;
+ }
+ }
+
+ }
+
+ protected URIMapping findExistingProfileMapping(URI profileDefinitionURI, ResourceSet resourceSet) {
+
+ String fileExtension = profileDefinitionURI.fileExtension();
+
+ URIMapping mapping = RSAToPapyrusParametersFactory.eINSTANCE.createURIMapping();
+ URI sourceURI = profileDefinitionURI.trimFragment().trimQuery();
+ mapping.setSourceURI(sourceURI.toString());
+
+ URI targetURI = null;
+
+ if ("epx".equals(fileExtension)) {
+ targetURI = sourceURI.trimFileExtension().appendFileExtension("profile").appendFileExtension("uml");
+ try {
+ Resource resource = resourceSet.getResource(targetURI, true);
+ if (resource != null && !resource.getContents().isEmpty()) {
+ mapping.setTargetURI(targetURI.toString());
+ return mapping;
+ }
+ } catch (Exception ex) {
+ // Ignore: we can't find the target resource
+ }
+ }
+
+ return findExistingMapping(profileDefinitionURI, resourceSet);
+ }
+
+ protected URIMapping findExistingMapping(URI proxyURI, ResourceSet resourceSet) {
+ String fileExtension = proxyURI.fileExtension();
+
+ URIMapping mapping = RSAToPapyrusParametersFactory.eINSTANCE.createURIMapping();
+ mapping.setSourceURI(proxyURI.trimFragment().trimQuery().toString());
+
+ URI targetURI = null;
+ // Maybe the element has been migrated locally
+ if (rsaExtensions.contains(fileExtension)) {
+ targetURI = proxyURI.trimFileExtension().appendFileExtension("uml");
+ } else if (rsaProfileExtension.equals(fileExtension)) {
+ targetURI = proxyURI.trimFileExtension().appendFileExtension("profile.uml");
+ }
+
+ if (targetURI != null) {
+ try {
+ EObject targetElement = resourceSet.getEObject(targetURI, true);
+ if (targetElement != null) {
+
+ targetURI = EcoreUtil.getURI(targetElement);
+
+ mapping.setTargetURI(targetURI.trimFragment().trimQuery().toString());
+
+ return mapping;
+ }
+ } catch (Exception ex) {
+ // Ignore: we can't find a target element for the given proxy
+ }
+ }
+
+
+ if (!isRSAModelElement(proxyURI)) {
+ // Maybe the resource exists, but doesn't contain this specific element
+ URI resourceURI = proxyURI.trimFragment().trimQuery();
+ try {
+ Resource resource = resourceSet.getResource(resourceURI, true);
+ if (resource != null && !resource.getContents().isEmpty()) {
+
+ mapping.setTargetURI(resourceURI.toString());
+
+ return mapping;
+ }
+ } catch (Exception ex) {
+ // Ignore: we can't find the target resource
+ }
+ }
+
+ // If the URI fragment is a path, don't explore registered libraries/profiles: almost all libraries will
+ // have a matching element, although there is no specific correspondence
+ if (isPathFragment(proxyURI)) {
+ return null;
+ }
+
+ // Otherwise, we have an ID fragment
+
+ // Maybe the resource has already been migrated, then deployed as a static library. Browse all registered libraries and try to find a matching XMI ID
+ for (IRegisteredLibrary library : RegisteredLibrary.getRegisteredLibraries()) {
+ URI libraryURI = library.getUri();
+ try {
+ Resource libraryResource = localResourceSet.getResource(libraryURI, true);
+ if (libraryResource != null) {
+ EObject resolvedElement = libraryResource.getEObject(proxyURI.fragment());
+ if (resolvedElement != null && !resolvedElement.eIsProxy()) {
+ mapping.setTargetURI(libraryURI.toString());
+
+ return mapping;
+ }
+ }
+ } catch (Exception ex) {
+ // Ignore
+ }
+ }
+
+ // Maybe the object is a Profile, so let's browse registered profiles as well
+ for (IRegisteredProfile profile : RegisteredProfile.getRegisteredProfiles()) {
+ URI profileURI = profile.getUri();
+ try {
+ Resource profileResource = localResourceSet.getResource(profileURI, true);
+ if (profileResource != null) {
+ EObject resolvedElement = profileResource.getEObject(proxyURI.fragment());
+ if (resolvedElement != null && !resolvedElement.eIsProxy()) {
+ mapping.setTargetURI(profileURI.toString());
+
+ return mapping;
+ }
+ }
+ } catch (Exception ex) {
+ // Ignore
+ }
+ }
+
+ return null;
+ }
+
+ protected boolean isPathFragment(URI proxyURI) {
+ String uriFragment = proxyURI.fragment();
+
+ return uriFragment != null && uriFragment.charAt(0) == '/';
+ }
+
+ protected URIMapping findExistingMapping(EObject proxy, ResourceSet resourceSet) {
+ URI proxyURI = EcoreUtil.getURI(proxy);
+ return findExistingMapping(proxyURI, resourceSet);
+ }
+
+ /** Propagates the URI Mappings to all duplicates */
+ public void propagateURIMappings(List<URIMapping> allMappings, MappingParameters result) {
+ for (URIMapping mapping : allMappings) {
+ for (URIMapping uriMapping : result.getUriMappings()) {
+ if (uriMapping.getSourceURI().equals(mapping.getSourceURI())) {
+ uriMapping.setTargetURI(mapping.getTargetURI());
+ }
+ }
+
+ for (URIMapping profileURIMapping : result.getProfileUriMappings()) {
+ if (profileURIMapping.getSourceURI().equals(mapping.getSourceURI())) {
+ profileURIMapping.setTargetURI(mapping.getTargetURI());
+ }
+ }
+ }
+ }
+
+ public List<URIMapping> flattenURIMappings(MappingParameters result) {
+ List<URIMapping> allMappings = new LinkedList<URIMapping>();
+ allMappings.addAll(result.getUriMappings());
+ allMappings.addAll(result.getProfileUriMappings());
+
+ removeDuplicates(allMappings);
+
+ return allMappings;
+ }
+
+ /**
+ * Remove duplicate mappings. Mappings are duplicate if they have the same SourceURI.
+ * Less specific mappings will be discarded (Usually, the ones with the same Source and Target URI)
+ */
+ protected void removeDuplicates(List<URIMapping> allMappings) {
+ List<URIMapping> mappingsCopy = new LinkedList<URIMapping>(allMappings);
+
+ for (URIMapping mapping : mappingsCopy) {
+ for (URIMapping m : allMappings) {
+ if (m == mapping) {
+ continue;
+ }
+
+ // This is a duplicate
+ if (mapping.getSourceURI().equals(m.getSourceURI())) {
+ // If both mappings are still present, remove one of them
+ if (allMappings.contains(mapping) && allMappings.contains(m)) {
+ URIMapping mappingToRemove = findLessSpecificMapping(mapping, m);
+
+ allMappings.remove(mappingToRemove);
+ break;
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ * If 2 mappings have the same sourceURI but different targetURI, returns the less pertinent one
+ * (Usually, the one with the same Source and Target)
+ *
+ * @param mapping1
+ * @param mapping2
+ * @return
+ */
+ protected URIMapping findLessSpecificMapping(URIMapping mapping1, URIMapping mapping2) {
+ if (!isUsefulMapping(mapping1)) {
+ return mapping1;
+ }
+
+ return mapping2;
+ }
+
+ protected boolean isUsefulMapping(URIMapping mapping) {
+ if (mapping.getTargetURI() == null || "".equals(mapping.getTargetURI()) || mapping.getTargetURI().equals(mapping.getSourceURI())) {
+ return false;
+ }
+
+ return true;
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ImportTransformation.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ImportTransformation.java
new file mode 100644
index 0000000..32c578b
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ImportTransformation.java
@@ -0,0 +1,1515 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2017 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bugs 496439, 496299, 505330
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.transformation;
+
+import java.io.FileNotFoundException;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStreamWriter;
+import java.net.URL;
+import java.util.ArrayList;
+import java.util.Arrays;
+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.Optional;
+import java.util.Properties;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.core.runtime.IConfigurationElement;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.MultiStatus;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.SubMonitor;
+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.BasicDiagnostic;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.DiagnosticException;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.common.util.WrappedException;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EModelElement;
+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.gmf.runtime.notation.Style;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.m2m.qvt.oml.BasicModelExtent;
+import org.eclipse.m2m.qvt.oml.ExecutionContext;
+import org.eclipse.m2m.qvt.oml.ExecutionContextImpl;
+import org.eclipse.m2m.qvt.oml.ExecutionDiagnostic;
+import org.eclipse.m2m.qvt.oml.ModelExtent;
+import org.eclipse.m2m.qvt.oml.TransformationExecutor;
+import org.eclipse.m2m.qvt.oml.util.ISessionData;
+import org.eclipse.m2m.qvt.oml.util.Trace;
+import org.eclipse.m2m.qvt.oml.util.WriterLog;
+import org.eclipse.papyrus.dsml.validation.PapyrusDSMLValidationRule.PapyrusDSMLValidationRulePackage;
+import org.eclipse.papyrus.infra.core.architecture.ArchitectureDescriptionLanguage;
+import org.eclipse.papyrus.infra.core.architecture.ArchitectureDomain;
+import org.eclipse.papyrus.infra.core.architecture.RepresentationKind;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.emf.resource.ShardResourceHelper;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.infra.gmfdiag.common.model.NotationModel;
+import org.eclipse.papyrus.infra.tools.util.ClassLoaderHelper;
+import org.eclipse.papyrus.infra.tools.util.ListHelper;
+import org.eclipse.papyrus.interoperability.common.utils.TraceHelper;
+import org.eclipse.papyrus.interoperability.common.utils.TransformationUI;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory;
+import org.eclipse.papyrus.interoperability.rsa.blackbox.ProfileBaseHelper;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ExecutorsPool;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ResourceAccessHelper;
+import org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage;
+import org.eclipse.papyrus.interoperability.rsa.internal.extension.PostProcessExtension;
+import org.eclipse.papyrus.interoperability.rsa.internal.extension.TransformationExtension;
+import org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage;
+import org.eclipse.papyrus.uml.documentation.Documentation.DocumentationPackage;
+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.OpaqueExpression;
+import org.eclipse.uml2.uml.resource.UMLResource;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+import com.google.common.collect.ImmutableList;
+
+/**
+ * Executes a single RSA-to-Papyrus transformation
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class ImportTransformation {
+
+ /** For debug purpose */
+ private static final boolean DEBUG = false;
+
+ // SourceURI is the input
+ protected URI sourceURI;
+
+ // targetURI is computed during the transformation
+ protected URI targetURI;
+
+ protected ModelExtent outUML, outNotation, outSashModel, inParameters, inPapyrusProfiles;
+
+ protected MigrationResourceSet resourceSet;
+
+ protected Job job;
+
+ protected Resource umlResource;
+
+ protected Config parameters;
+
+ protected boolean complete = false;
+
+ // For logging purpose (Bug 455001)
+ // Starts when the job starts; ends when the job returns
+ /** 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 DependencyAnalysisHelper analysisHelper;
+
+ /** Store the extension classes to avoid re-parsing the extension point, but still be able to instantiate them in parallel/multiple times */
+ protected final static List<Class<? extends TransformationExtension>> extensionClasses = ImmutableList.copyOf(loadExtensionClasses());
+
+ /** Extensions contributed via other plug-ins */
+ protected final List<TransformationExtension> extensions;
+
+ /** The extension point contributing {@link TransformationExtension}s */
+ public static final String EXTENSION_POINT_ID = Activator.PLUGIN_ID + ".extensions";
+
+ /** Accumulation of incremental update traces from each transformation. */
+ private Trace trace = Trace.createEmptyTrace();
+
+ /** Transformation execution context used for all transformation runs. */
+ private ExecutionContext context;
+
+ static {
+ sourceEPackages.add(org.eclipse.papyrus.interoperability.rsa.default_.DefaultPackage.eINSTANCE);
+ sourceEPackages.add(org.eclipse.papyrus.interoperability.rsa.profilebase.ProfileBasePackage.eINSTANCE);
+
+ for (TransformationExtension extension : getAllExtensions()) {
+ sourceEPackages.addAll(extension.getAdditionalSourceEPackages());
+ }
+ }
+
+ public ImportTransformation(URI sourceURI) {
+ this(sourceURI, RSAToPapyrusParametersFactory.eINSTANCE.createConfig(), null);
+ }
+
+ public ImportTransformation(URI sourceURI, Config config, DependencyAnalysisHelper analysisHelper) {
+ Assert.isNotNull(sourceURI);
+ this.sourceURI = sourceURI;
+ this.parameters = config;
+ this.analysisHelper = analysisHelper;
+ this.extensions = getAllExtensions();
+ }
+
+ /**
+ * Parse the extension point and return all valid classes (To be instantiated by each instance of the transformation)
+ *
+ * @return
+ * All the valid (i.e. instantiatable) extensions to the RSA-to-Papyrus transformation. The list is never null, but can be empty
+ */
+ protected static List<Class<? extends TransformationExtension>> loadExtensionClasses() {
+ LinkedList<Class<? extends TransformationExtension>> result = new LinkedList<>();
+
+ IConfigurationElement[] config = Platform.getExtensionRegistry().getConfigurationElementsFor(EXTENSION_POINT_ID);
+ for (IConfigurationElement e : config) {
+ try {
+ String className = e.getAttribute("className");
+
+ Class<? extends TransformationExtension> extensionClass = ClassLoaderHelper.loadClass(className, TransformationExtension.class);
+ if (result == null) {
+ continue; // ClassLoaderHelper has already logged an exception (ClassNotFound, not type-compliant, ...)
+ }
+
+ if (extensionClass.getConstructor() == null) { // No default constructor
+ Activator.log.error(new IllegalArgumentException(String.format("The class %s contributed by %s should have a default constructor", extensionClass.getName(), e.getContributor())));
+ }
+
+ result.add(extensionClass);
+ } catch (Throwable t) { // Other errors (Most common ones should have already been caught)
+ Activator.log.error(String.format("The plug-in %s contributed an invalid class", e.getContributor()), t);
+ }
+ }
+
+ return result;
+ }
+
+ /**
+ * Instantiate all the extensions for a specific transformation
+ *
+ * @return
+ * A non-null (potentially empty) list of extensions
+ */
+ protected static List<TransformationExtension> getAllExtensions() {
+ List<TransformationExtension> extensions = new ArrayList<>(extensionClasses.size());
+
+ for (Class<? extends TransformationExtension> extension : extensionClasses) {
+ try {
+ extensions.add(extension.newInstance()); // Extension has already been checked while parsing the extension point. We don't expect any error here
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ }
+ }
+
+ return extensions;
+ }
+
+ public void run() {
+ run(true);
+ }
+
+ /**
+ * 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 = ImportTransformation.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 Map<URI, URI> getURIMappings() {
+ return uriMappings;
+ }
+
+ public Map<URI, URI> getProfileURIMappings() {
+ return profileURIMappings;
+ }
+
+ public URI getTargetURI() {
+ return targetURI;
+ }
+
+ /**
+ * Initializes the resource set, and resolve all dependencies
+ */
+ protected void initResourceSet(IProgressMonitor monitor) {
+ resourceSet = new MigrationResourceSetImpl(analysisHelper);
+ 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 {
+ resourceSet.getResource(sourceURI, true);
+ loadInPapyrusProfiles();
+ } catch (Exception ex) {
+ Activator.log.error("An error occurred while loading " + getModelName(), ex);
+ }
+ }
+
+ protected void initResourceSet(URI sourceURI, MigrationResourceSet resourceSet) {
+ this.sourceURI = sourceURI;
+ this.resourceSet = resourceSet;
+ this.umlResource = resourceSet.getResource(sourceURI, false);
+
+ // These are all new in the new resource set
+ outUML = null;
+ outNotation = null;
+ outSashModel = null;
+ inPapyrusProfiles = null;
+ }
+
+ /**
+ * Returns the number of elements to be migrated (i.e. diagrams to be migrated + specific non-trivial elements)
+ * Used to initialize the progress monitor
+ *
+ * @return
+ * The total number of elements to be migrated
+ */
+ protected int countSupportedElements() {
+ int i = 0;
+
+ ModelExtent extent = getInOutUMLModel();
+ for (EObject eObject : extent.getContents()) {
+
+ TreeIterator<EObject> modelIterator = EcoreUtil.getAllContents(eObject, true);
+ while (modelIterator.hasNext()) {
+ EObject next = modelIterator.next();
+ if (next instanceof Diagram) {
+ Diagram diagram = (Diagram) next;
+ if (isSupported(diagram)) {
+ i++;
+ diagramsToDelete.add(diagram);
+ }
+ modelIterator.prune(); // Don't navigate Diagram children
+ } else if (next instanceof OpaqueExpression) {
+ if (parameters.isConvertOpaqueExpressionToLiteralString()) {
+ OpaqueExpression exp = (OpaqueExpression) next;
+ if (needsConversion(exp)) {
+ i++;
+ }
+ }
+ }
+ }
+ }
+
+ i += getAllTransformationURIs().size();
+
+ // Add the number of steps required by each extension
+ for (TransformationExtension extension : getExtensions()) {
+ int extraSteps = extension.getNumberOfSteps();
+ if (extraSteps > 0) {
+ i += extraSteps;
+ }
+ }
+
+ return i;
+ }
+
+ /**
+ * Returns true if the OpaqueExpression is to be converted to a LiteralString
+ * OpaqueExpressions are converted to LiteralString when they have a single body with no language
+ *
+ * @param exp
+ * @return
+ */
+ protected static boolean needsConversion(OpaqueExpression exp) {
+ List<String> languages = exp.getLanguages();
+ List<String> bodies = exp.getBodies();
+ if (bodies.size() > 1) {
+ return false;
+ }
+
+ if (languages.isEmpty() || (languages.size() == 1 && exp.getLanguages().get(0).isEmpty())) {
+ return true;
+ }
+
+ return false;
+ }
+
+ protected static final Set<String> supportedDiagramIds = new HashSet<>();
+
+ protected static boolean isSupported(Diagram diagram) {
+ return supportedDiagramIds.contains(diagram.getType());
+ }
+
+ // Preloads all required transformations (Either locally or statically, depending on the cache parameter)
+ protected IStatus loadTransformations(IProgressMonitor monitor) {
+ for (URI transformationURI : getAllTransformationURIs()) {
+ executorsPool.preLoad(transformationURI);
+ monitor.worked(1);
+ }
+
+ return Status.OK_STATUS;
+ }
+
+ // MemoryLeak: Don't rely on BasicDiagnostic.toIStatus
+ // The source Diagnostic contains references to the QVTo ModelExtents, referencing the Model elements (used in #extractPapyrusProfiles())
+ // When using the standard conversion, these references are not discarded
+ 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 IStatus run(final IProgressMonitor monitor) {
+
+ //
+ // INITIALIZATION / LOADING
+ //
+
+ monitor.subTask("Loading source model " + getModelName());
+
+ long startLoad = System.nanoTime();
+ initResourceSet(monitor);
+
+ int numberOfElements = countSupportedElements();
+
+
+ monitor.beginTask("Importing " + getModelName(), numberOfElements);
+
+ monitor.subTask("Loading transformations (This may take a few seconds for the first import)...");
+ loadTransformations(monitor);
+
+
+ List<ModelExtent> extents = getModelExtents();
+
+ String statusMessage = String.format("Import %s", getModelName());
+ MultiStatus generationStatus = new MultiStatus(Activator.PLUGIN_ID, IStatus.OK, statusMessage, null);
+
+ context = createExecutionContext(monitor, generationStatus);
+
+ try {
+ getInPapyrusProfiles(); // Preload profiles
+
+ long endLoad = System.nanoTime();
+ loadingTime = endLoad - startLoad;
+
+ //
+ // TRANSFORMATIONS
+ //
+
+ IStatus result; // Result of an individual transformation (Will be aggregated to the complete GenerationStatus)
+
+ prepareExtensions();
+
+ long startExtensions = System.nanoTime();
+ result = importExtensions(context, monitor, ExtensionFunction::executeBefore);
+ long endExtensions = System.nanoTime();
+ this.importExtensionsTime = endExtensions - startExtensions;
+ generationStatus.add(result);
+
+ // Diagrams
+ Collection<URI> transformations = getDiagramTransformationURIs();
+
+ monitor.subTask("Importing diagrams...");
+ for (URI transformationURI : transformations) {
+ result = runTransformation(transformationURI, extents, monitor);
+ generationStatus.add(result);
+ }
+
+ // Semantic model changes (Default language for OpaqueExpressions...)
+ monitor.subTask("Importing semantic model...");
+ result = runTransformation(getSemanticTransformationURI(), extents, monitor);
+ generationStatus.add(result);
+
+ if (!monitor.isCanceled()) {
+ monitor.subTask("Handle additional profiles...");
+ // Default.epx and ProfileBase.epx
+ result = importRSAProfiles(context, monitor);
+ generationStatus.add(result);
+ }
+
+ Collection<URI> additional = getAdditionalTransformationURIs();
+ if (!additional.isEmpty()) {
+ monitor.subTask("Additional transformations...");
+ for (URI transformationURI : additional) {
+ result = runTransformation(transformationURI, extents, monitor);
+ generationStatus.add(result);
+ }
+ }
+
+ long startExtensionsAfter = System.nanoTime();
+ result = importExtensions(context, monitor, ExtensionFunction::executeAfter);
+ long endExtensionsAfter = System.nanoTime();
+ this.importExtensionsTime += endExtensionsAfter - startExtensionsAfter;
+ } finally {
+ context = null;
+ }
+
+ //
+ // FRAGMENTS & SAVE
+ //
+
+ if (generationStatus.getSeverity() <= Diagnostic.WARNING) {
+
+ monitor.subTask("Cleaning-up target model...");
+ URI notationModelURI = null;
+ URI sashModelURI = null;
+
+ targetURI = convertToPapyrus(sourceURI, UMLResource.FILE_EXTENSION);
+ notationModelURI = convertToPapyrus(sourceURI, "notation"); // TODO use constant
+ sashModelURI = convertToPapyrus(sourceURI, "di"); // TODO use constant
+
+ if ("epx".equals(sourceURI.fileExtension())) {
+ profileURIMappings.put(sourceURI, targetURI);
+ }
+ // Profile mappings are also library mappings
+ uriMappings.put(sourceURI, targetURI);
+
+ umlResource = createUMLResource(resourceSet, sourceURI, targetURI);
+
+ // This list contains all the objects from the initial ModelExtent, plus all the ones
+ // which were created during the QVTo transformations.
+ List<EObject> outUMLObjects = getInOutUMLModel().getContents();
+ umlResource.getContents().addAll(outUMLObjects);
+
+ GMFResource notationResource = new GMFResource(notationModelURI); // GMF Resource content type?
+ resourceSet.getResources().add(notationResource);
+ List<EObject> outNotationObjects = getInoutNotationModel().getContents();
+ notationResource.getContents().addAll(outNotationObjects);
+
+ // Cleanup empty diagrams (FIXME: They should not be generated)
+ List<EObject> contentsCopy = new LinkedList<>(notationResource.getContents());
+ for (EObject next : contentsCopy) {
+ if (next instanceof Diagram) {
+ Diagram diagram = (Diagram) next;
+ if (diagram.getType() == null || "".equals(diagram.getType())) {
+ delete(diagram);
+ }
+ }
+ }
+
+ XMIResource sashResource = new XMIResourceImpl(sashModelURI);
+ resourceSet.getResources().add(sashResource);
+ List<EObject> sashModelObjects = getOutSashModel().getContents();
+ sashResource.getContents().addAll(sashModelObjects);
+
+ configureResource(sashResource);
+ configureResource(notationResource);
+ configureResource((XMIResource) umlResource);
+
+ // Handle orphaned elements: remove them and log a warning (Log temporarily disabled to avoid spamming the console)
+ List<EObject> notationRootElements = new LinkedList<>(notationResource.getContents());
+ for (EObject rootElement : notationRootElements) {
+ if (rootElement instanceof View) {
+ View rootView = (View) rootElement;
+ if (!(rootView instanceof Diagram)) {
+ if (DEBUG) {
+ String objectType = rootView.getElement() == null ? "None" : rootView.getElement().eClass().getName();
+ String viewType = rootView.getType() == null ? "None" : rootView.getType();
+ generationStatus.add(new Status(IStatus.WARNING, Activator.PLUGIN_ID, "An orphaned view has been found after the migration. It will be removed. View Type: " + viewType + ", semantic type: " + objectType));
+ }
+
+ delete(rootElement);
+ }
+ } else if (rootElement instanceof Style) {
+
+ if (DEBUG) {
+ String styleType = rootElement.eClass().getName();
+ generationStatus.add(new Status(IStatus.WARNING, Activator.PLUGIN_ID, "An orphaned style has been found after the migration. It will be removed. Style Type: " + styleType));
+ }
+
+ delete(rootElement);
+ }
+ }
+
+ monitor.subTask("Handling fragments...");
+
+ Collection<Resource> resourcesToSave = handleFragments(umlResource, notationResource, sashResource);
+
+ for (Resource resource : resourcesToSave) {
+ List<EObject> rootElements = new LinkedList<>(resource.getContents());
+ for (EObject rootElement : rootElements) {
+ EPackage ePackage = rootElement.eClass().getEPackage();
+ if (ePackage == ProfileBasePackage.eINSTANCE || ePackage == DefaultPackage.eINSTANCE) {
+ delete(rootElement);
+ }
+ }
+ }
+
+ monitor.subTask("Deleting source diagrams...");
+
+ for (Diagram diagram : diagramsToDelete) {
+ EObject container = diagram.eContainer();
+ delete(diagram);
+ if (container instanceof EAnnotation) {
+ EAnnotation annotation = (EAnnotation) container;
+ if (annotation.getContents().isEmpty()) {
+ delete(annotation);
+ }
+ }
+ }
+
+ diagramsToDelete.clear();
+
+ monitor.subTask("Analyzing dangling references...");
+
+ long startDangling = System.nanoTime();
+ handleDanglingURIs(resourcesToSave);
+ long endDangling = System.nanoTime();
+ this.danglingRefTime = endDangling - startDangling;
+
+ monitor.subTask("Saving models...");
+
+ for (Resource resource : resourcesToSave) {
+ try {
+ cleanMetadataAnnotations(resource);
+ ResourceAccessHelper.INSTANCE.saveResource(resource, null);
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ generationStatus.add(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "An exception occurred during save", ex));
+ }
+ }
+ }
+
+ monitor.subTask("Releasing memory...");
+
+ unloadResourceSet(this.resourceSet);
+
+ this.resourceSet = null;
+ this.umlResource = null;
+ this.outNotation = this.inParameters = this.outSashModel = this.outUML = null;
+
+ monitor.done();
+ return generationStatus;
+ }
+
+ /**
+ * Functional interface to abstract {@link TransformationExtension#executeBefore(ExecutionContext, IProgressMonitor)}
+ * and {@link TransformationExtension#executeAfter(ExecutionContext, IProgressMonitor)}
+ *
+ * @author Camille Letavernier
+ *
+ */
+ @FunctionalInterface
+ protected static interface ExtensionFunction {
+ public IStatus apply(TransformationExtension extension, ExecutionContext context, IProgressMonitor monitor);
+
+ /**
+ * Implements ExtensionFunction
+ *
+ * Delegates to {@link TransformationExtension#executeBefore(ExecutionContext, IProgressMonitor)}
+ */
+ public static IStatus executeBefore(TransformationExtension extension, ExecutionContext context, IProgressMonitor monitor) {
+ return extension.executeBefore(context, monitor);
+ }
+
+ /**
+ * Implements ExtensionFunction
+ *
+ * Delegates to {@link TransformationExtension#executeAfter(ExecutionContext, IProgressMonitor)}
+ */
+ public static IStatus executeAfter(TransformationExtension extension, ExecutionContext context, IProgressMonitor monitor) {
+ return extension.executeAfter(context, monitor);
+ }
+
+ /**
+ * Delegates to {@link PostProcessExtension#postProcess(ExecutionContext, IProgressMonitor)}.
+ */
+ public static IStatus postProcess(TransformationExtension extension, ExecutionContext context, IProgressMonitor monitor) {
+ return Optional.of(extension)
+ .filter(PostProcessExtension.class::isInstance)
+ .map(PostProcessExtension.class::cast)
+ .map(post -> post.postProcess(context, SubMonitor.convert(monitor, 1)))
+ .orElse(Status.OK_STATUS);
+ }
+ }
+
+ protected void prepareExtensions() {
+ for (TransformationExtension extension : getExtensions()) {
+ extension.setResourceSet(resourceSet);
+ extension.setExecutorsPool(executorsPool);
+ extension.setTransformation(this);
+ }
+ }
+
+ /**
+ * @return the extensions
+ */
+ protected List<TransformationExtension> getExtensions() {
+ return extensions;
+ }
+
+ protected IStatus importExtensions(ExecutionContext context, IProgressMonitor monitor, ExtensionFunction function) {
+ List<IStatus> allResults = new ArrayList<>(getExtensions().size());
+ for (TransformationExtension extension : getExtensions()) {
+ IStatus result = function.apply(extension, context, monitor);
+ allResults.add(result);
+ }
+
+ if (allResults.isEmpty()) {
+ return Status.OK_STATUS;
+ } else if (allResults.size() == 1) {
+ return allResults.get(0);
+ } else {
+ return aggregateStatus(allResults);
+ }
+ }
+
+ // FIXME implement properly
+ public static MultiStatus aggregateStatus(List<IStatus> statuses) {
+ return new MultiStatus(Activator.PLUGIN_ID, IStatus.OK, statuses.toArray(new IStatus[statuses.size()]), "", null);
+ }
+
+ /**
+ * @param resource
+ */
+ private 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 IStatus importRSAProfiles(ExecutionContext context, IProgressMonitor monitor) {
+ URI transformationURI = getProfilesTransformationURI();
+
+ List<ModelExtent> extents = new LinkedList<>();
+ extents.add(getInOutUMLModel());
+ extents.add(getInoutNotationModel());
+ Diagnostic loadedProfiles = loadInPapyrusProfiles();
+ extents.add(getInPapyrusProfiles());
+ extents.add(getInProfileDefinitions());
+ extents.add(getInConfig());
+
+ IStatus transformationStatus = runTransformation(transformationURI, extents, monitor);
+ IStatus loadedProfilesStatus = createStatusFromDiagnostic(loadedProfiles);
+
+ int severity = Math.max(loadedProfiles.getSeverity(), transformationStatus.getSeverity());
+
+ String message;
+ if (severity > IStatus.OK) {
+ message = "The following errors occurred:";
+ } else {
+ message = "OK";
+ }
+
+ IStatus completeResult = new MultiStatus(Activator.PLUGIN_ID, severity, new IStatus[] { loadedProfilesStatus, transformationStatus }, message, null);
+
+ return completeResult;
+ }
+
+ protected TransformationExecutor getTransformation(URI transformationURI, IProgressMonitor monitor) throws DiagnosticException {
+ return executorsPool.getExecutor(transformationURI);
+ }
+
+ // Static synchronized, as it seems that QVTo can't load 2 transformations at the same time, even in separate execution contexts
+ protected static synchronized TransformationExecutor loadTransformationExecutor(URI transformationURI, IProgressMonitor monitor) throws DiagnosticException {
+ TransformationExecutor executor = new TransformationExecutor(transformationURI);
+ Diagnostic diagnostic = executor.loadTransformation(monitor);
+
+ if (diagnostic.getSeverity() != Diagnostic.OK) {
+ throw new DiagnosticException(diagnostic);
+ }
+
+ return executor;
+ }
+
+ protected Properties readProfileBaseProperties() {
+ URI propertiesURI = sourceURI.trimFileExtension().appendFileExtension("properties");
+
+ Properties properties = new Properties();
+ InputStream inputStream = null;
+
+ try {
+ URL url = new URL(propertiesURI.toString());
+ inputStream = url.openStream();
+ properties.load(inputStream);
+ } catch (FileNotFoundException ex) {
+ // Ignore: the file doesn't exist
+ } catch (IOException ex) {
+ Activator.log.error(ex);
+ } finally {
+ if (inputStream != null) {
+ try {
+ inputStream.close();
+ } catch (IOException ex) {
+ Activator.log.error(ex);
+ }
+ }
+ }
+
+ return properties;
+ }
+
+ protected ModelExtent getInProfileDefinitions() {
+ return new BasicModelExtent(Arrays.asList(new EPackage[] {
+ PapyrusDSMLValidationRulePackage.eINSTANCE,
+ DocumentationPackage.eINSTANCE
+ }));
+ }
+
+ protected ModelExtent getInPapyrusProfiles() {
+ if (inPapyrusProfiles == null) {
+ loadInPapyrusProfiles();
+ }
+
+ return inPapyrusProfiles;
+ }
+
+ /**
+ * Returns a Diagnostic. Diagnostic#data is the ModelExtent containing the loaded profiles
+ *
+ * @return
+ * @throws WrappedException
+ */
+ protected Diagnostic loadInPapyrusProfiles() {
+ if (inPapyrusProfiles != null) {
+ return Diagnostic.OK_INSTANCE;
+ }
+
+ List<String> missingProfiles = new LinkedList<>();
+
+ List<EObject> allContents = new LinkedList<>();
+ try {
+ URI validationProfileURI = URI.createURI("pathmap://DSMLValidation_PROFILES/PapyrusValidationRuleDSML.uml");
+ Resource validationProfile = resourceSet.getResource(validationProfileURI, true);
+ checkResource(validationProfile);
+ allContents.addAll(validationProfile.getContents());
+ } catch (WrappedException ex) {
+ missingProfiles.add("Validation Rules Profile");
+ }
+
+ try {
+ URI documentationProfileURI = URI.createURI("pathmap://PAPYRUS_DOCUMENTATION/Papyrus.profile.uml");
+ Resource documentationProfile = resourceSet.getResource(documentationProfileURI, true);
+ checkResource(documentationProfile);
+ allContents.addAll(documentationProfile.getContents());
+ } catch (WrappedException ex) {
+ missingProfiles.add("Documentation Profile");
+ }
+
+ inPapyrusProfiles = new BasicModelExtent(allContents);
+
+ String message;
+ int code;
+ if (missingProfiles.isEmpty()) {
+ message = "OK";
+ code = Diagnostic.OK;
+ } else {
+ message = "The following Papyrus profiles cannot be found: " + ListHelper.deepToString(missingProfiles, ", ");
+ code = Diagnostic.ERROR;
+ }
+
+ Diagnostic diagnostic = new BasicDiagnostic(code, Activator.PLUGIN_ID, code, message, null);
+
+ return diagnostic;
+ }
+
+ 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 Resource createUMLResource(ResourceSet resourceSet, URI sourceResourceURI, URI targetResourceURI) {
+ // Use the same resource to ensure that XMI IDs are maintained
+ Resource resource = resourceSet.getResource(sourceResourceURI, false);
+ resource.setURI(targetResourceURI);
+ return resource;
+ }
+
+ protected ModelExtent getInConfig() {
+ if (inParameters == null) {
+ inParameters = new BasicModelExtent(Collections.singletonList(parameters));
+ }
+ return inParameters;
+ }
+
+ 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);
+ }
+
+ 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) {
+
+ // For performance reasons, RSA RT Stereotypes have not been deleted during the QVTo transformation (Bug 444379)
+ // Delete them as a post-action. Iterate on all controlled models and delete the RealTime stereotypes at the root of each resource
+ List<EObject> resourceContents = new LinkedList<>(resource.getContents());
+ for (EObject rootElement : resourceContents) {
+ if (sourceEPackages.contains(rootElement.eClass().getEPackage())) {
+ delete(rootElement);
+ }
+ }
+ }
+ }
+
+ /**
+ * Collects the RSA-style fragment linkage annotations, RSA diagrams, and other
+ * RSA-specific annotations attached to an {@code object}.
+ *
+ * @param object
+ * an object in the model
+ * @param annotations
+ * collects the RSA-specific annotations
+ */
+ protected void collectRSAAnnotations(EObject object, Collection<? super EAnnotation> annotations) {
+ if (object instanceof EModelElement) {
+ EModelElement modelElement = (EModelElement) object;
+ modelElement.getEAnnotations().stream()
+ .filter(this::isRSASpecificAnnotation)
+ .forEach(annotations::add);
+ }
+ }
+
+ protected boolean isRSASpecificAnnotation(EAnnotation annotation) {
+ boolean result = false;
+
+ String source = annotation.getSource();
+ if (source != null) {
+ // This covers both the fragments and the fragmentContainer annotation
+ result = source.startsWith("com.ibm.xtools.uml.msl.fragment") //$NON-NLS-1$
+ || source.equals("uml2.diagrams") //$NON-NLS-1$
+ // Covers the UI-reduction annotation
+ || source.startsWith("com.ibm.xtools.common.ui."); //$NON-NLS-1$
+ }
+
+ return result;
+ }
+
+ protected URI convertToPapyrus(URI rsaURI, String extension) {
+ if ("epx".equals(rsaURI.fileExtension())) { //$NON-NLS-1$
+ // Profiles: myProfile.profile.uml, myProfile.profile.notation, ...
+ return rsaURI.trimFileExtension().appendFileExtension("profile").appendFileExtension(extension); //$NON-NLS-1$
+ } else {
+ // Models and Fragments: myModel.uml, myFragment.uml, ...
+ return rsaURI.trimFileExtension().appendFileExtension(extension);
+ }
+ }
+
+ /**
+ * Runs a transformation using the context shared by all transformations.
+ *
+ * @param transformationURI
+ * the transformation to run
+ * @param extents
+ * the extents on which to apply the transformation
+ * @param monitor
+ * progress monitor
+ *
+ * @return the result of the transformation execution
+ */
+ public IStatus runTransformation(URI transformationURI, List<ModelExtent> extents, IProgressMonitor monitor) {
+ return runTransformation(transformationURI, context, monitor, extents);
+ }
+
+ protected IStatus runTransformation(URI transformationURI, ExecutionContext context, IProgressMonitor monitor, List<ModelExtent> extents) {
+ if (monitor.isCanceled()) {
+ return new Status(IStatus.CANCEL, Activator.PLUGIN_ID, "Operation canceled");
+ }
+
+ TransformationExecutor executor;
+ try {
+ executor = getTransformation(transformationURI, monitor);
+ } catch (DiagnosticException ex) {
+ Diagnostic diagnostic = ex.getDiagnostic();
+
+ Activator.log.warn(String.format("Cannot load the transformation : %s. Diagnostic: %s", transformationURI, diagnostic.getMessage()));
+ return createStatusFromDiagnostic(diagnostic);
+ }
+
+ ExecutionDiagnostic result;
+ synchronized (executor) {
+ try {
+ // Gather the new execution traces
+ Trace newTraces = Trace.createEmptyTrace();
+ @SuppressWarnings("restriction")
+ ISessionData.SimpleEntry<Trace> traceKey = org.eclipse.m2m.internal.qvt.oml.evaluator.QVTEvaluationOptions.INCREMENTAL_UPDATE_TRACE;
+ context.getSessionData().setValue(traceKey, newTraces);
+
+ result = executor.execute(context, extents.toArray(new ModelExtent[0]));
+
+ // Append to our history
+ List<EObject> history = new ArrayList<>(trace.getTraceContent());
+ history.addAll(newTraces.getTraceContent());
+ trace.setTraceContent(history);
+ } finally {
+ executor.cleanup();
+ executorsPool.releaseExecutor(executor);
+ }
+ }
+
+ return createStatusFromDiagnostic(result);
+ }
+
+ protected ExecutionContext createExecutionContext(final IProgressMonitor monitor, final MultiStatus generationStatus) {
+ ExecutionContextImpl context = new ExecutionContextImpl();
+ context.setConfigProperty("keepModeling", true); //$NON-NLS-1$ o
+ context.setConfigProperty(TransformationUI.MONITOR, monitor);
+
+ // context.setProgressMonitor(monitor);
+
+ context.setLog(new WriterLog(new OutputStreamWriter(System.out)) {
+
+ @Override
+ public void log(String message) {
+ super.log(message);
+ }
+
+ @Override
+ public void log(String message, Object param) {
+ super.log(message, param);
+ }
+
+ @Override
+ public void log(int level, String message) {
+ super.log(level, message);
+ if (level >= 1) {
+ generationStatus.merge(new Status(level, Activator.PLUGIN_ID, message));
+ }
+
+ }
+
+ @Override
+ public void log(int level, String message, Object param) {
+ super.log(level, message, param);
+ if (level >= 1) {
+ generationStatus.merge(new Status(level, Activator.PLUGIN_ID, message + ", data:" + param));
+ }
+ }
+ });
+
+ initTransformationProperties(context);
+
+ // Invoke extensions as incremental transformations
+
+ context.getSessionData().setValue(TraceHelper.TRACE_HISTORY, trace);
+
+ this.context = context;
+ return context;
+ }
+
+ /**
+ * Initializes the ExecutionContext with configuration properties required by transformations
+ *
+ * This is a lightweight mechanism to avoid initializing ModelExtents for a single EObject reference, or for non-EMF values
+ *
+ * Typically used by blackbox methods
+ *
+ * @param context
+ */
+ protected void initTransformationProperties(ExecutionContextImpl context) {
+ // Load the *.properties file associated to ProfileBase
+ context.setConfigProperty(ProfileBaseHelper.PROFILE_BASE_PROPERTIES, readProfileBaseProperties());
+
+ // Load the InnerClassDiagramView (From viewpoints)
+ URI innerClassDiagramViewURI = URI.createPlatformPluginURI("org.eclipse.papyrus.uml.architecture/model/uml.architecture", false);
+ Resource resource = resourceSet.getResource(innerClassDiagramViewURI, true);
+
+ final ArchitectureDomain domain = (ArchitectureDomain) resource.getContents().get(0);
+ final EObject eObject = domain.getContexts().get(0);
+
+ RepresentationKind innerClassDiagram = null;
+ if(eObject instanceof ArchitectureDescriptionLanguage) {
+ final Iterator<RepresentationKind> representationKinds = ((ArchitectureDescriptionLanguage)eObject).getRepresentationKinds().iterator();
+ while(representationKinds.hasNext() && null == innerClassDiagram) {
+ final RepresentationKind representationKind = representationKinds.next();
+ if(representationKind.getName().equals("Inner Class Diagram")) {
+ innerClassDiagram = representationKind;
+ }
+ }
+ }
+
+ context.setConfigProperty("InnerClassDiagramView", innerClassDiagram);
+ }
+
+ 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);
+ }
+
+ protected List<ModelExtent> getModelExtents() {
+ List<ModelExtent> allExtents = new LinkedList<>();
+ allExtents.add(getInOutUMLModel());
+ allExtents.add(getInoutNotationModel());
+ allExtents.add(getOutSashModel());
+ allExtents.add(getInConfig());
+ return allExtents;
+ }
+
+ public ModelExtent getInOutUMLModel() {
+ if (outUML == null) {
+ try {
+ Resource resource = resourceSet.getResource(sourceURI, true);
+
+ /*
+ * 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
+ *
+ * StereotypeApplications from Fragments are not considered "rootElements" by QVTo, and
+ * there is no logical link between UML Elements and stereotype applications in fragments
+ * We need to make all root Elements available to the QVTo ModelExtent (Including the ones
+ * from fragments)
+ */
+ List<EObject> allStereotypeApplications = new LinkedList<>();
+ TreeIterator<EObject> allContents = resource.getAllContents();
+ Set<Resource> browsedResources = new HashSet<>();
+ browsedResources.add(resource);
+ while (allContents.hasNext()) {
+ EObject next = allContents.next();
+ if (!(next instanceof Element)) { // Only navigate the UML hierarchy
+ allContents.prune();
+ continue;
+ }
+
+ Resource nextResource = next.eResource();
+ if (!browsedResources.contains(nextResource)) {
+ browsedResources.add(nextResource);
+ for (EObject rootElement : nextResource.getContents()) {
+ EPackage rootElementPackage = rootElement.eClass().getEPackage();
+ if (sourceEPackages.contains(rootElementPackage)) {
+ // We're interested in all stereotype applications which require a specific support in the QVTo transformation
+ allStereotypeApplications.add(rootElement);
+ }
+ }
+ }
+ }
+
+ List<EObject> allRootElements = new LinkedList<>(resource.getContents());
+ allRootElements.addAll(allStereotypeApplications);
+
+ // outUML = new BasicModelExtent(resource.getContents());
+ outUML = new BasicModelExtent(allRootElements);
+
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ }
+ }
+
+ return outUML;
+ }
+
+ /* Notation model is initially empty, but will be filled successively by each transformation */
+ public ModelExtent getInoutNotationModel() {
+ if (outNotation == null) {
+ try {
+ if (resourceSet instanceof ModelSet) {
+ // This is the post-processing phase, so we already have the notations
+ NotationModel notation = (NotationModel) ((ModelSet) resourceSet).getModel(NotationModel.MODEL_ID);
+ if (notation != null) {
+ List<EObject> diagrams = notation.getResources().stream()
+ .flatMap(res -> res.getContents().stream())
+ .filter(Diagram.class::isInstance)
+ .collect(Collectors.toList());
+ outNotation = new BasicModelExtent(diagrams);
+ }
+ }
+ } catch (Exception e) {
+ Activator.log.error(e);
+ }
+
+ if (outNotation == null) {
+ // Guess it's not the post-processing phase
+ outNotation = new BasicModelExtent();
+ }
+ }
+
+ return outNotation;
+ }
+
+ protected ModelExtent getOutSashModel() {
+ if (outSashModel == null) {
+ outSashModel = new BasicModelExtent();
+ }
+
+ return outSashModel;
+ }
+
+ static {
+ supportedDiagramIds.addAll(Arrays.asList(new String[] {
+ "Class", // Includes Profiles
+ "Object",
+ "Activity",
+ // "Component", //Not yet
+ // "Sequence", // Not yet
+ "Statechart",
+ "Structure"
+ }));
+ }
+
+ protected Collection<URI> getDiagramTransformationURIs() {
+ return ListHelper.asList(new URI[] {
+ getTransformationURI("RSAClassDiagram"),
+ // getTransformationURI("RSASequenceDiagram"), //Disabled since Sequence Diagrams are not properly supported
+ getTransformationURI("RSAStructureDiagram"),
+ getTransformationURI("RSAActivityDiagram"),
+ getTransformationURI("RSAStateMachineDiagram"),
+ getTransformationURI("RSAProfileDiagram"),
+ getTransformationURI("RSAUsecaseDiagram")
+ });
+ }
+
+ protected URI getSemanticTransformationURI() {
+ return getTransformationURI("RSAModelToPapyrus");
+ }
+
+ protected URI getProfilesTransformationURI() {
+ return getTransformationURI("RSAProfilesToPapyrus");
+ }
+
+ protected Collection<URI> getAdditionalTransformationURIs() {
+ return Collections.emptyList();
+ }
+
+ protected Collection<URI> getAllTransformationURIs() {
+ Collection<URI> allTransformations = getDiagramTransformationURIs();
+ allTransformations.add(getProfilesTransformationURI());
+ allTransformations.add(getSemanticTransformationURI());
+ allTransformations.addAll(getAdditionalTransformationURIs());
+ return allTransformations;
+ }
+
+ protected URI getTransformationURI(String transformationName) {
+ return URI.createPlatformPluginURI(String.format("%s/transform/%s.qvto", Activator.PLUGIN_ID, 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);
+ 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);
+ }
+ }
+
+ public URI getSourceURI() {
+ return sourceURI;
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ImportTransformationLauncher.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ImportTransformationLauncher.java
new file mode 100644
index 0000000..7ebff23
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ImportTransformationLauncher.java
@@ -0,0 +1,967 @@
+/*****************************************************************************
+ * Copyright (c) 2014, 2017 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bugs 496439, 505330
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.transformation;
+
+import java.io.IOException;
+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.Map.Entry;
+import java.util.Set;
+import java.util.concurrent.atomic.AtomicReference;
+
+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.SubMonitor;
+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.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.transaction.RollbackException;
+import org.eclipse.emf.transaction.Transaction;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.emf.transaction.impl.InternalTransactionalEditingDomain;
+import org.eclipse.gmf.runtime.notation.DecorationNode;
+import org.eclipse.gmf.runtime.notation.NotationFactory;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.StringValueStyle;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.m2m.qvt.oml.ExecutionContext;
+import org.eclipse.m2m.qvt.oml.util.Trace;
+import org.eclipse.papyrus.infra.core.resource.IEMFModel;
+import org.eclipse.papyrus.infra.core.resource.IModel;
+import org.eclipse.papyrus.infra.core.resource.ModelMultiException;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.emf.resource.DependencyManagementHelper;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.infra.tools.util.StringHelper;
+import org.eclipse.papyrus.interoperability.common.utils.TraceHelper;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ResourceAccessHelper;
+import org.eclipse.papyrus.interoperability.rsa.internal.extension.PostProcessExtension;
+import org.eclipse.papyrus.interoperability.rsa.internal.schedule.JobWrapper;
+import org.eclipse.papyrus.interoperability.rsa.internal.schedule.Schedulable;
+import org.eclipse.papyrus.interoperability.rsa.internal.schedule.Scheduler;
+import org.eclipse.papyrus.interoperability.rsa.internal.schedule.TransformationWrapper;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformation.ExtensionFunction;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ui.URIMappingDialog;
+import org.eclipse.papyrus.uml.tools.model.UmlModel;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.console.ConsolePlugin;
+import org.eclipse.ui.console.IConsole;
+import org.eclipse.ui.console.IConsoleManager;
+import org.eclipse.ui.console.MessageConsole;
+import org.eclipse.ui.console.MessageConsoleStream;
+import org.eclipse.ui.dialogs.SelectionDialog;
+import org.eclipse.ui.statushandlers.StatusManager;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Profile;
+import org.eclipse.uml2.uml.ProfileApplication;
+import org.eclipse.uml2.uml.Stereotype;
+
+/**
+ * Executes a batch of {@link ImportTransformation}s, then restores the dependencies (References)
+ * between each other
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class ImportTransformationLauncher {
+
+ // Nano to Second
+ protected final static long SECOND = 1000 * 1000 * 1000;
+
+ // Nano to Milliseconds
+ protected final static long MILLIS = 1000 * 1000;
+
+ protected final Config config;
+
+ protected final Control baseControl;
+
+ /**
+ * Own execution time, in nano-seconds. Doesn't take individual transformation's exec
+ * time into account. Also ignores the time when Blocking user Dialogs are opened
+ */
+ protected long ownExecutionTime;
+
+ /**
+ * Own loading time (For initial model loading)
+ */
+ protected long ownLoadingTime;
+
+ /**
+ * Own cumulated execution time for repairing stereotypes
+ */
+ protected long ownRepairStereotypesTime;
+
+ /**
+ * Own cumulated execution time for post-processing extensions
+ */
+ protected long ownPostProcessingTime;
+
+ /**
+ * Own cumulated execution time for repairing libraries
+ */
+ protected long ownRepairLibrariesTime;
+
+ /**
+ * Own execution time for resolving all matches for broken profiles/libraries
+ */
+ protected long resolveAllDependencies;
+
+ /**
+ * The top-level job for this transformation
+ */
+ protected Job importDependenciesJob;
+
+ /**
+ * Total time for all invidivual transformations to complete. Since they are executed in parallel,
+ * this may be different from their cumulated execution time (Unless a single thread is used)
+ */
+ protected long transformationsExecutionTime = 0L;
+
+ protected DependencyAnalysisHelper analysisHelper;
+
+ public ImportTransformationLauncher(Config config) {
+ this(config, null);
+ }
+
+ public ImportTransformationLauncher(Config config, Control baseControl) {
+ this.config = config;
+ this.baseControl = baseControl;
+ }
+
+ /**
+ * Executes the transformation (Asynchronous)
+ *
+ * @param urisToImport
+ */
+ public void run(List<URI> urisToImport) {
+ List<ImportTransformation> transformations = new LinkedList<ImportTransformation>();
+
+ analysisHelper = new DependencyAnalysisHelper(config);
+
+ for (URI uri : urisToImport) {
+ ImportTransformation transformation = createTransformation(uri);
+ transformations.add(transformation);
+ }
+
+ // Always use the batch launcher, even if there is only 1 transformation (Bug 455012)
+ importModels(transformations);
+ }
+
+ protected ImportTransformation createTransformation(URI transformationURI) {
+ return new ImportTransformation(transformationURI, config, analysisHelper);
+ }
+
+ /**
+ * Start a Job and delegate to {@link #importModels(IProgressMonitor, List)}
+ *
+ * @param transformations
+ */
+ protected void importModels(final List<ImportTransformation> transformations) {
+ importDependenciesJob = new Job("Import Models") {
+
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ IStatus result = ImportTransformationLauncher.this.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 (ImportTransformation 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 postTime = postProcessTime.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 post-processing time: " + timeFormat(postTime));
+ log("\tTotal execution time: " + timeFormat(totalPhase2));
+
+ log("Total");
+ log("\tTotal execution time: " + timeFormat(transformation.getExecutionTime() + totalPhase2));
+ log("\n");
+ }
+
+ int nbThreads = Math.max(1, config.getMaxThreads());
+ 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("\tCumulated Post-processing Time: " + timeFormat(ownPostProcessingTime));
+ 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 (ImportTransformation 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();
+ }
+
+ protected void log(String message) {
+ System.out.println(message);
+
+ MessageConsole console = getConsole();
+ MessageConsoleStream out = console.newMessageStream();
+ out.println(message);
+ }
+
+ protected static final String CONSOLE_NAME = "Model Import Results"; // The name is both the ID and the Label
+
+ protected MessageConsole getConsole() {
+ ConsolePlugin plugin = ConsolePlugin.getDefault();
+ IConsoleManager consoleManager = plugin.getConsoleManager();
+ IConsole[] existing = consoleManager.getConsoles();
+ for (int i = 0; i < existing.length; i++) {
+ if (CONSOLE_NAME.equals(existing[i].getName())) {
+ return (MessageConsole) existing[i];
+ }
+ }
+ // no console found, so create a new one
+ MessageConsole rsaConsole = new MessageConsole(CONSOLE_NAME, null);
+ consoleManager.addConsoles(new IConsole[] { rsaConsole });
+ return rsaConsole;
+ }
+
+ protected String timeFormat(Long nano) {
+ if (nano == null) {
+ return "?"; // FIXME: crash?
+ }
+ long seconds = nano / SECOND;
+ if (seconds < 1) {
+ long millis = nano / MILLIS;
+ return String.format("%s ms", millis);
+ }
+ return String.format("%d:%02d:%02d", seconds / 3600, (seconds % 3600) / 60, (seconds % 60));
+ }
+
+ /**
+ * Schedules all the individual transformations, wait for completion, then
+ * call {@link #handleModelDependencies(List, IProgressMonitor)}
+ *
+ * @param monitor
+ * @param transformations
+ * @return
+ */
+ protected IStatus importModels(IProgressMonitor monitor, List<ImportTransformation> 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);
+
+ List<Schedulable> tasks = new LinkedList<Schedulable>();
+
+ for (ImportTransformation transformation : transformations) {
+ tasks.add(new TransformationWrapper(transformation));
+ }
+
+ Scheduler scheduler = new Scheduler(config.getMaxThreads());
+ scheduler.schedule(monitor, tasks);
+
+ 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;
+ }
+
+ /**
+ * Convert all model dependencies (For "imported model -> emx library" to "imported model -> imported library")
+ * Also repairs profile and stereotype applications
+ *
+ * @param transformations
+ * @param monitor
+ */
+ protected void handleModelDependencies(List<ImportTransformation> transformations, IProgressMonitor monitor) {
+
+ long begin = System.nanoTime();
+
+ long timeToIgnore = 0L;
+
+
+ final Map<URI, URI> urisToReplace = new HashMap<URI, URI>();
+ final Map<URI, URI> profileUrisToReplace = new HashMap<URI, URI>();
+
+ for (ImportTransformation transformation : transformations) {
+ urisToReplace.putAll(transformation.getURIMappings());
+ profileUrisToReplace.putAll(transformation.getProfileURIMappings());
+ }
+
+ monitor.subTask("Analysing unresolved references...");
+ long startResolveAll = System.nanoTime();
+ analysisHelper.resolveAllMappings(urisToReplace, profileUrisToReplace);
+ long endResolveAll = System.nanoTime();
+ resolveAllDependencies = endResolveAll - startResolveAll;
+
+ if (!config.getMappingParameters().getUriMappings().isEmpty() || !config.getMappingParameters().getProfileUriMappings().isEmpty()) {
+
+ long beginDialog = System.nanoTime();
+ MappingParameters parameters = confirmURIMappings(config.getMappingParameters());
+ long endDialog = System.nanoTime();
+ timeToIgnore = endDialog - beginDialog;
+
+ config.setMappingParameters(parameters);
+
+ // Include the user-defined URI mappings
+ populateURIMap(parameters.getUriMappings(), urisToReplace);
+ populateURIMap(parameters.getUriMappings(), profileUrisToReplace);
+ populateURIMap(parameters.getProfileUriMappings(), profileUrisToReplace);
+ }
+
+ removeEmptyMappings(urisToReplace);
+
+ List<Schedulable> tasks = new LinkedList<Schedulable>();
+ for (final ImportTransformation transformation : transformations) {
+ Job transformationJob = new Job("Importing dependencies for " + transformation.getModelName()) {
+ @Override
+ protected IStatus run(IProgressMonitor monitor) {
+ long startFix = System.nanoTime();
+ IStatus fixStatus = fixDependencies(transformation, monitor, urisToReplace, profileUrisToReplace);
+ long endFix = System.nanoTime();
+ synchronized (ImportTransformationLauncher.this) {
+ totalTimeV2.put(transformation, endFix - startFix);
+ }
+
+ return fixStatus;
+ }
+ };
+
+ tasks.add(new JobWrapper(transformationJob));
+ }
+
+ Scheduler scheduler = new Scheduler(config.getMaxThreads());
+ scheduler.schedule(monitor, tasks);
+
+ long end = System.nanoTime();
+
+ ownExecutionTime = end - begin - timeToIgnore;
+ }
+
+ protected void removeEmptyMappings(Map<URI, URI> urisToReplace) {
+ Iterator<Map.Entry<URI, URI>> iterator = urisToReplace.entrySet().iterator();
+ while (iterator.hasNext()) {
+ Map.Entry<URI, URI> entry = iterator.next();
+ if (entry.getKey().equals(entry.getValue())) {
+ iterator.remove();
+ }
+ }
+ }
+
+ final protected Map<ImportTransformation, Long> loadingTimeV2 = new HashMap<ImportTransformation, Long>();
+
+ final protected Map<ImportTransformation, Long> proxiesTime = new HashMap<ImportTransformation, Long>();
+
+ final protected Map<ImportTransformation, Long> stereoTime = new HashMap<ImportTransformation, Long>();
+
+ final protected Map<ImportTransformation, Long> postProcessTime = new HashMap<ImportTransformation, Long>();
+
+ final protected Map<ImportTransformation, Long> totalTimeV2 = new HashMap<ImportTransformation, Long>();
+
+ protected IStatus fixDependencies(ImportTransformation transformation, IProgressMonitor monitor, Map<URI, URI> urisToReplace, Map<URI, URI> profileUrisToReplace) {
+ monitor.subTask("Importing dependencies for " + transformation.getModelName());
+ final MigrationModelSet modelSet = new MigrationModelSet();
+
+ final Collection<Resource> resourcesToRepair;
+ try {
+ URI targetURI = transformation.getTargetURI();
+ if (targetURI == null) {
+ // The transformation didn't complete properly
+ monitor.worked(1);
+ return Status.OK_STATUS;
+ }
+
+ long startLoading = System.nanoTime();
+ modelSet.loadModels(transformation.getTargetURI());
+ resourcesToRepair = resolveOwnResources(modelSet);
+ long endLoading = System.nanoTime();
+ synchronized (ImportTransformationLauncher.this) {
+ ownLoadingTime += endLoading - startLoading;
+ loadingTimeV2.put(transformation, endLoading - startLoading);
+ }
+ } catch (ModelMultiException e) {
+ Activator.log.error(e);
+ monitor.worked(1);
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "An exception occurred when repairing library dependencies", e);
+ }
+
+ try {
+ long startProxies = System.nanoTime();
+ modelSet.freeze(); // The repairProxies operation will try to load referenced resources, which we want to avoid (For performances)
+ try {
+ repairProxies(modelSet, resourcesToRepair, urisToReplace, monitor); // Repairing proxies first will change the Applied Profiles. This helps repairing stereotypes
+ } finally {
+ modelSet.unfreeze();
+ }
+ long endProxies = System.nanoTime();
+ synchronized (ImportTransformationLauncher.this) {
+ ownRepairLibrariesTime += endProxies - startProxies;
+ proxiesTime.put(transformation, endProxies - startProxies);
+ }
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "An exception occurred when repairing library dependencies", ex);
+ }
+
+ RepairStereotypes repairStereotypesAction = new RepairStereotypes(modelSet, resourcesToRepair, profileUrisToReplace);
+ try {
+ long startStereotypes = System.nanoTime();
+ repairStereotypesAction.execute();
+ long endStereotypes = System.nanoTime();
+ synchronized (ImportTransformationLauncher.this) {
+ ownRepairStereotypesTime += endStereotypes - startStereotypes;
+ stereoTime.put(transformation, endStereotypes - startStereotypes);
+ }
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "An exception occurred when repairing profiles/stereotypes", ex);
+ }
+
+ if (config.isRemoveUnmappedProfilesAndStereotypes()) {
+ try {
+ for (final Resource resource : resourcesToRepair) {
+ final List<EObject> eObjectsToDelete = new LinkedList<EObject>();
+ TreeIterator<EObject> allContents = resource.getAllContents();
+ while (allContents.hasNext()) {
+ EObject next = allContents.next();
+ if (next.eResource() != resource) {
+ allContents.prune();
+ continue;
+ }
+
+ // Delete instances of RSA Stereotypes
+ URI eClassURI = EcoreUtil.getURI(next.eClass());
+ if (StringHelper.equals("epx", eClassURI.fileExtension())) {
+ eObjectsToDelete.add(next);
+ allContents.prune();
+ continue;
+ }
+
+ // Delete applications of RSA Profiles
+ if (next instanceof ProfileApplication) {
+ ProfileApplication profileApplication = (ProfileApplication) next;
+ Profile appliedProfile = profileApplication.getAppliedProfile();
+ if (appliedProfile != null) {
+ URI profileURI = EcoreUtil.getURI(appliedProfile);
+ if (StringHelper.equals("epx", profileURI.fileExtension())) {
+ eObjectsToDelete.add(next);
+ allContents.prune();
+ continue;
+ }
+ }
+ }
+ }
+
+ Runnable runnable = new Runnable() {
+ @Override
+ public void run() {
+ for (EObject eObject : eObjectsToDelete) {
+ EObject parentElement = eObject.eContainer();
+ if (parentElement == null) {
+ resource.getContents().remove(eObject);
+ } else {
+ EStructuralFeature containingFeature = eObject.eContainingFeature();
+ EcoreUtil.remove(parentElement, containingFeature, eObject);
+ }
+ }
+ }
+ };
+
+ runFastTransaction(modelSet.getTransactionalEditingDomain(), runnable);
+
+ }
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "An exception occurred when repairing profiles/stereotypes", ex);
+ }
+ }
+
+ IStatus repairDisplayStatus = repairStereotypeDisplay(modelSet, resourcesToRepair);
+ if (!repairDisplayStatus.isOK()) {
+ return repairDisplayStatus;
+ }
+
+ IStatus result = Status.OK_STATUS;
+
+ // Post-processing extensions
+ long postProcessors = transformation.getExtensions().stream()
+ .filter(PostProcessExtension.class::isInstance)
+ .count();
+ if (postProcessors > 0L) {
+ final TransactionalEditingDomain domain = modelSet.getTransactionalEditingDomain();
+
+ String statusMessage = String.format("Post-process %s", transformation.getModelName());
+ MultiStatus postProcessStatus = new MultiStatus(Activator.PLUGIN_ID, IStatus.OK, statusMessage, null);
+
+ long startPostProcessing = System.nanoTime();
+
+ try {
+ runFastTransaction(domain, () -> {
+ // Re-initialize the transformation for the new resource set
+ transformation.initResourceSet(transformation.getTargetURI(), modelSet);
+
+ ExecutionContext context = transformation.createExecutionContext(
+ SubMonitor.convert(monitor, 1),
+ postProcessStatus);
+
+ // Cannot increment on previous transformations because they were in a different resource set
+ context.getSessionData().setValue(TraceHelper.TRACE_HISTORY, Trace.createEmptyTrace());
+
+ postProcessStatus.merge(transformation.importExtensions(context, monitor, ExtensionFunction::postProcess));
+ });
+ } catch (RollbackException ex) {
+ Activator.log.error(ex);
+ } catch (InterruptedException ex) {
+ Activator.log.error(ex);
+ } finally {
+ long endPostProcessing = System.nanoTime();
+ synchronized (ImportTransformationLauncher.this) {
+ ownPostProcessingTime += endPostProcessing - startPostProcessing;
+ postProcessTime.put(transformation, endPostProcessing - startPostProcessing);
+ }
+ }
+
+ if (postProcessStatus.getSeverity() > IStatus.WARNING) {
+ return postProcessStatus;
+ }
+
+ result = postProcessStatus;
+ }
+
+ try {
+
+ for (Resource resource : resourcesToRepair) {
+ ResourceAccessHelper.INSTANCE.saveResource(resource, null);
+ }
+
+ monitor.worked(1);
+
+ TransactionalEditingDomain domain = modelSet.getTransactionalEditingDomain();
+ runFastTransaction(domain, () -> EMFHelper.unload(modelSet));
+
+ domain.dispose();
+
+ } catch (IOException ex) {
+ Activator.log.error(ex);
+ } catch (RollbackException ex) {
+ Activator.log.error(ex);
+ } catch (InterruptedException ex) {
+ Activator.log.error(ex);
+ }
+
+ return result;
+ }
+
+ protected IStatus repairStereotypeDisplay(ModelSet modelSet, Collection<Resource> resourcesToRepair) {
+
+ Map<View, List<DecorationNode>> nodesToCreate = new HashMap<View, List<DecorationNode>>();
+
+ final TransactionalEditingDomain domain = modelSet.getTransactionalEditingDomain();
+
+ InternalTransactionalEditingDomain internalDomain = (InternalTransactionalEditingDomain) domain;
+
+ Map<String, Object> options = new HashMap<String, Object>();
+ options.put(Transaction.OPTION_NO_UNDO, true);
+ options.put(Transaction.OPTION_NO_VALIDATION, true);
+ options.put(Transaction.OPTION_NO_TRIGGERS, true);
+ options.put(Transaction.OPTION_UNPROTECTED, true);
+
+ List<StringValueStyle> stylesToDelete = new LinkedList<StringValueStyle>();
+
+ try {
+
+ // We're in a batch environment, with no undo/redo support. Run a vanilla transaction to improve performances
+ Transaction fastTransaction = internalDomain.startTransaction(false, options);
+
+ for (Resource resource : resourcesToRepair) {
+ if ("notation".equals(resource.getURI().fileExtension())) {
+ TreeIterator<EObject> contents = resource.getAllContents();
+ while (contents.hasNext()) {
+ EObject next = contents.next();
+
+ if (next instanceof StringValueStyle) {
+ StringValueStyle style = (StringValueStyle) next;
+ if ("stereotypeDisplayBackup".equals(style.getName())) {
+ stylesToDelete.add(style); // Cannot use iterator.remove(), it is not supported. Store and delete later
+ continue;
+ }
+ }
+
+ if (!(next instanceof View)) {
+ contents.prune();
+ continue;
+ }
+
+ View content = (View) next;
+ StringValueStyle stereotypeDisplay = (StringValueStyle) content.getNamedStyle(NotationPackage.eINSTANCE.getStringValueStyle(), "stereotypeDisplayBackup");
+ if (stereotypeDisplay == null) {
+ continue;
+ }
+
+ final String value = stereotypeDisplay.getStringValue();
+ if (value == null) {
+ continue;
+ }
+
+ switch (value) {
+ case "None": // Other values not handled yet //$NON-NLS-1$
+ EObject semanticElement = content.getElement();
+ if (!(semanticElement instanceof Element)) {
+ continue;
+ }
+
+ Element umlElement = (Element) semanticElement;
+
+ List<Stereotype> stereotypes = umlElement.getAppliedStereotypes();
+
+ List<DecorationNode> childNodesToCreate = new LinkedList<DecorationNode>();
+ nodesToCreate.put(content, childNodesToCreate);
+
+ for (Stereotype appliedStereotype : stereotypes) {
+ DecorationNode stereotypeLabel = NotationFactory.eINSTANCE.createDecorationNode();
+ stereotypeLabel.setType("StereotypeLabel");
+ stereotypeLabel.setVisible(false);
+
+ StringValueStyle stereotypeStyle = (StringValueStyle) stereotypeLabel.createStyle(NotationPackage.eINSTANCE.getStringValueStyle());
+ stereotypeStyle.setName("stereotype");
+ stereotypeStyle.setStringValue(appliedStereotype.getQualifiedName());
+ stereotypeLabel.setElement(appliedStereotype);
+
+ stereotypeLabel.setLayoutConstraint(NotationFactory.eINSTANCE.createBounds());
+
+ childNodesToCreate.add(stereotypeLabel);
+ }
+ break;
+ default:
+ // Not handled
+ }
+ }
+ }
+ }
+
+ for (Entry<View, List<DecorationNode>> toCreate : nodesToCreate.entrySet()) {
+ View parent = toCreate.getKey();
+ for (DecorationNode decorationNode : toCreate.getValue()) {
+ parent.getPersistedChildren().add(decorationNode);
+ }
+ }
+
+ // Simple delete for performances (These styles don't have any incoming reference other than the containment)
+ for (StringValueStyle styleToDelete : stylesToDelete) {
+ EObject container = styleToDelete.eContainer();
+ EReference feature = styleToDelete.eContainmentFeature();
+
+ if (container != null && feature != null) {
+
+ if (feature.isMany()) {
+ List<?> values = (List<?>) container.eGet(feature);
+ values.remove(styleToDelete);
+ } else {
+ container.eUnset(feature);
+ }
+ }
+ }
+
+ fastTransaction.commit();
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ return new Status(IStatus.ERROR, Activator.PLUGIN_ID, "An error occurred while trying to migrate Stereotype Display", ex);
+ }
+
+ return Status.OK_STATUS;
+ }
+
+ protected Collection<Resource> resolveOwnResources(ModelSet modelSet) {
+ UmlModel umlModel = (UmlModel) modelSet.getModel(UmlModel.MODEL_ID);
+ if (umlModel == null) {
+ return Collections.emptySet();
+ }
+
+ // Iterate on the main resource's contents (Including fragments).
+ // The ModelSet will take care of loading any associated resource (notation, di)
+
+ Resource mainResource = umlModel.getResource();
+ if (mainResource == null) {
+ return Collections.emptySet();
+ }
+
+ Iterator<EObject> contents = mainResource.getAllContents();
+ while (contents.hasNext()) {
+ contents.next();
+ }
+
+ Set<Resource> resourcesToRepair = new HashSet<Resource>();
+ for (Resource resource : modelSet.getResources()) {
+ if (isMainModelResource(modelSet, resource)) {
+ resourcesToRepair.add(resource);
+ }
+ }
+ return resourcesToRepair;
+ }
+
+ /**
+ * A resource belongs to the main model if it is one of the 4-files model (Di, Notation, Uml, Sash), or if it is
+ * a resource associated to a Sub-model of the main model (i.e. child of the main UML resource,
+ * or resource associated to a child of the main UML resource)
+ *
+ * @param modelSet
+ * @param resource
+ * @return
+ */
+ protected boolean isMainModelResource(ModelSet modelSet, Resource resource) {
+ IModel model = modelSet.getModelFor(resource);
+ if (model instanceof IEMFModel) {
+ IEMFModel logicalModel = (IEMFModel) model;
+ if (logicalModel.getResource() == resource || logicalModel.isControlled(resource)) {
+ return true;
+ }
+ }
+
+ return false;
+ }
+
+ protected void repairProxies(final ModelSet modelSet, final Collection<Resource> resourcesToRepair, final Map<URI, URI> urisToReplace, IProgressMonitor monitor) throws InterruptedException, RollbackException {
+ final TransactionalEditingDomain domain = modelSet.getTransactionalEditingDomain();
+ Runnable runnable = new Runnable() {
+ @Override
+ public void run() {
+ DependencyManagementHelper.batchUpdateDependencies(urisToReplace, resourcesToRepair, domain);
+ }
+ };
+
+ runFastTransaction(domain, runnable);
+ }
+
+ protected static final void runFastTransaction(TransactionalEditingDomain domain, Runnable runnable) throws InterruptedException, RollbackException {
+ InternalTransactionalEditingDomain internalDomain = (InternalTransactionalEditingDomain) domain;
+
+ Map<String, Object> options = new HashMap<String, Object>();
+ options.put(Transaction.OPTION_NO_UNDO, true);
+ options.put(Transaction.OPTION_NO_VALIDATION, true);
+ options.put(Transaction.OPTION_NO_TRIGGERS, true);
+ options.put(Transaction.OPTION_UNPROTECTED, true);
+
+ // We're in a batch environment, with no undo/redo support. Run a vanilla transaction to improve performances
+ Transaction fastTransaction = internalDomain.startTransaction(false, options);
+ try {
+ runnable.run();
+ } finally {
+ fastTransaction.commit();
+ }
+ }
+
+ /**
+ * Convert and add all the URIMappings into the URI Map
+ *
+ * @param mappings
+ * @param uriMap
+ */
+ protected static void populateURIMap(List<URIMapping> mappings, Map<URI, URI> uriMap) {
+ for (URIMapping mapping : mappings) {
+ if (mapping == null) {
+ continue;
+ }
+ String source = mapping.getSourceURI();
+ String target = mapping.getTargetURI();
+
+ if (source != null && target != null && !source.trim().isEmpty() && !target.trim().isEmpty()) {
+
+ URI sourceURI = URI.createURI(mapping.getSourceURI());
+ URI targetURI = URI.createURI(mapping.getTargetURI());
+
+ if (uriMap.containsKey(sourceURI)) {
+ continue;
+ }
+
+ uriMap.put(sourceURI, targetURI);
+ }
+ }
+ }
+
+ protected MappingParameters confirmURIMappings(final MappingParameters mappingParameters) {
+ List<URIMapping> flatMappings = analysisHelper.flattenURIMappings(mappingParameters);
+ analysisHelper.propagateURIMappings(flatMappings, mappingParameters);
+
+ if (config.isAlwaysAcceptSuggestedMappings()) {
+ return mappingParameters;
+ }
+
+ final AtomicReference<MappingParameters> newParameters = new AtomicReference<MappingParameters>(mappingParameters);
+
+ if (baseControl != null && !baseControl.isDisposed()) {
+ baseControl.getDisplay().syncExec(new Runnable() {
+ @Override
+ public void run() {
+ newParameters.set(openMappingsDialog(mappingParameters));
+ }
+ });
+ }
+
+ return newParameters.get();
+ }
+
+ protected MappingParameters openMappingsDialog(final MappingParameters mappingParameters) {
+ final Shell shell = baseControl.getShell();
+
+ SelectionDialog dialog = new URIMappingDialog(shell, mappingParameters, analysisHelper);
+
+ dialog.open();
+ return (MappingParameters) dialog.getResult()[0];
+ }
+
+ /** Mainly for test purpose */
+ public void waitForCompletion() throws Exception {
+ importDependenciesJob.join();
+ }
+
+ /** Mainly for test purpose */
+ public IStatus getResult() {
+ return importDependenciesJob.getResult();
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationModelSet.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationModelSet.java
new file mode 100644
index 0000000..e0bcfbf
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationModelSet.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.transformation;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ThreadSafeModelSet;
+
+/**
+ * @author Camille Letavernier
+ *
+ */
+public class MigrationModelSet extends ThreadSafeModelSet implements MigrationResourceSet {
+
+ private boolean frozen = false;
+
+ /**
+ * @see org.eclipse.papyrus.interoperability.rsa.transformation.MigrationResourceSet#freeze()
+ *
+ */
+ @Override
+ public void freeze() {
+ this.frozen = true;
+ }
+
+ /**
+ * @see org.eclipse.papyrus.interoperability.rsa.transformation.MigrationResourceSet#unfreeze()
+ *
+ */
+ @Override
+ public void unfreeze() {
+ this.frozen = false;
+ }
+
+ /**
+ * @see org.eclipse.emf.ecore.resource.impl.ResourceSetImpl#getResource(org.eclipse.emf.common.util.URI, boolean)
+ *
+ * @param uri
+ * @param loadOnDemand
+ * @return
+ */
+ @Override
+ public Resource getResource(URI uri, boolean loadOnDemand) {
+ return super.getResource(uri, frozen ? false : loadOnDemand);
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationResourceSet.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationResourceSet.java
new file mode 100644
index 0000000..f7c17f5
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationResourceSet.java
@@ -0,0 +1,43 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * CEA LIST - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.transformation;
+
+import org.eclipse.emf.ecore.resource.ResourceSet;
+
+/**
+ * A ResourceSet which can optionally be "frozen". In frozen state,
+ * it won't load any additional resource, until {@link #unfreeze()} is called
+ *
+ * Freezing the ResourceSet may violate the EMF Contract of getResource() and should be used carefully.
+ *
+ * Use this when using eGet(EStructuralFeature, resolve = false) is not sufficient (Bug 457341 / Comment 17)
+ *
+ * @author Camille Letavernier
+ *
+ */
+public interface MigrationResourceSet extends ResourceSet {
+
+ /**
+ * Freeze this resource set: resources will not be demand-loaded anymore
+ * Resources which are already present in the workspace will still be accessible
+ *
+ * Frozen ResourceSets may violate the API Contract for {@link #getResource(org.eclipse.emf.common.util.URI, boolean)} ; use with care
+ */
+ public void freeze();
+
+ /**
+ * Unfreeze this resource set: come back to a normal state
+ */
+ public void unfreeze();
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationResourceSetImpl.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationResourceSetImpl.java
new file mode 100644
index 0000000..23cc6d9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/MigrationResourceSetImpl.java
@@ -0,0 +1,71 @@
+/*****************************************************************************
+ * Copyright (c) 2015, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * CEA LIST - Initial API and implementation
+ * Christian W. Damus - bug 505330
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.transformation;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ThreadSafeResourceSet;
+
+/**
+ * @author Camille Letavernier
+ *
+ */
+public class MigrationResourceSetImpl extends ThreadSafeResourceSet implements MigrationResourceSet {
+
+ private boolean frozen = false;
+
+ /**
+ * Initializes me without a dependency analysis helper, which is not recommended
+ * because then it will be difficult for me to resolve profile namespace locations.
+ *
+ * @deprecated Use the {@link #MigrationResourceSetImpl(DependencyAnalysisHelper)} constructor, instead
+ */
+ @Deprecated
+ public MigrationResourceSetImpl() {
+ this(null);
+ }
+
+ /**
+ * Initializes me with my dependency analysis helper.
+ *
+ * @param dependencyHelper
+ * my dependency analysis helper, or {@code null} if none
+ */
+ public MigrationResourceSetImpl(DependencyAnalysisHelper dependencyHelper) {
+ super();
+
+ if (dependencyHelper != null) {
+ // Install a URI converter that maps *.epx to *.profile.uml where
+ // the target actually exists
+ setURIConverter(new ProfileMappingAwareURIConverter(this, dependencyHelper));
+ }
+ }
+
+ @Override
+ public void freeze() {
+ this.frozen = true;
+ }
+
+ @Override
+ public void unfreeze() {
+ this.frozen = false;
+ }
+
+ @Override
+ public Resource getResource(URI uri, boolean loadOnDemand) {
+ return super.getResource(uri, frozen ? false : loadOnDemand);
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ProfileMappingAwareURIConverter.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ProfileMappingAwareURIConverter.java
new file mode 100644
index 0000000..4417150
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ProfileMappingAwareURIConverter.java
@@ -0,0 +1,102 @@
+/*****************************************************************************
+ * Copyright (c) 2016 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.transformation;
+
+import static org.eclipse.emf.common.util.URI.createURI;
+
+import java.util.Map;
+import java.util.Optional;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.URIConverter;
+import org.eclipse.emf.ecore.resource.impl.ExtensibleURIConverterImpl;
+import org.eclipse.emf.ecore.resource.impl.URIMappingRegistryImpl;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping;
+
+import com.google.common.collect.Maps;
+
+/**
+ * A custom URI converter that lets the resource set find the Papyrus versions of
+ * profiles imported from RSA automatically, especially to resolve schema locations
+ * before the dependency-mapping/stereotype-repair phase.
+ */
+class ProfileMappingAwareURIConverter extends ExtensibleURIConverterImpl {
+
+ private final ResourceSet owner;
+ private final DependencyAnalysisHelper dependencyHelper;
+
+ private final Map<URI, Optional<URIMapping>> profileMappings = Maps.newConcurrentMap();
+
+ /**
+ * Initializes me with the resource set that owns me and a dependency analysis
+ * helper that resolves profile mappings within it.
+ *
+ * @param owner
+ * my contextual resource set
+ * @param dependencyHelper
+ * the profile mapping helper
+ */
+ public ProfileMappingAwareURIConverter(ResourceSet owner, DependencyAnalysisHelper dependencyHelper) {
+ super();
+
+ this.owner = owner;
+ this.dependencyHelper = dependencyHelper;
+ }
+
+ @Override
+ protected URIMap getInternalURIMap() {
+
+ if (uriMap == null) {
+ URIMap delegate = super.getInternalURIMap();
+ uriMap = (URIMap) new URIMappingRegistryImpl() {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected URI delegatedGetURI(URI uri) {
+ URI result;
+
+ if (!"epx".equalsIgnoreCase(uri.fileExtension())) {
+ result = delegate.getURI(uri);
+ } else {
+ Optional<URIMapping> mapping = getProfileMapping(uri);
+ result = mapping
+ .map(m -> createURI(m.getTargetURI()))
+ .orElseGet(() -> delegate.getURI(uri));
+ }
+
+ return result;
+ }
+ }.map();
+ }
+
+ return uriMap;
+
+ }
+
+ private Optional<URIMapping> getProfileMapping(URI uri) {
+ return profileMappings.computeIfAbsent(uri, this::findProfileMapping);
+ }
+
+ private Optional<URIMapping> findProfileMapping(URI uri) {
+ // If the EPX actually exists, use it. And we must use an independent
+ // converter instance for this test, because otherwise we will
+ // deadlock on re-entrance into looking for a profile mapping
+ URIMapping result = URIConverter.INSTANCE.exists(uri, null)
+ ? null
+ : dependencyHelper.findExistingProfileMapping(uri, owner);
+ return Optional.ofNullable(result);
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/RepairStereotypes.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/RepairStereotypes.java
new file mode 100644
index 0000000..2274dd6
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/RepairStereotypes.java
@@ -0,0 +1,224 @@
+/*****************************************************************************
+ * Copyright (c) 2014, 2015 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 436666
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.transformation;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.emf.common.util.BasicDiagnostic;
+import org.eclipse.emf.common.util.TreeIterator;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.transaction.RollbackException;
+import org.eclipse.emf.transaction.Transaction;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.emf.transaction.impl.InternalTransactionalEditingDomain;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
+import org.eclipse.papyrus.infra.services.labelprovider.service.impl.LabelProviderServiceImpl;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.uml.modelrepair.internal.stereotypes.IRepairAction;
+import org.eclipse.papyrus.uml.modelrepair.internal.stereotypes.ZombieStereotypesDescriptor;
+import org.eclipse.uml2.uml.Component;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Profile;
+import org.eclipse.uml2.uml.ProfileApplication;
+import org.eclipse.uml2.uml.UMLPackage;
+
+import com.google.common.base.Function;
+import com.google.common.base.Predicates;
+import com.google.common.collect.Iterators;
+import com.google.common.collect.Lists;
+import com.google.common.collect.Sets;
+
+/**
+ * Repairs stereotype applications in the specified model set, using the default action for each
+ *
+ * The given URI Map is used when the proper profile can't be found automatically
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class RepairStereotypes {
+
+ private final ModelSet modelSet;
+
+ private final Collection<Resource> resourcesToRepair;
+
+ private final Map<URI, URI> profileMappings;
+
+ public RepairStereotypes(ModelSet modelSet, Collection<Resource> resourcesToRepair, Map<URI, URI> profileMappings) {
+ this.modelSet = modelSet;
+ this.resourcesToRepair = resourcesToRepair;
+ this.profileMappings = profileMappings;
+ }
+
+ /**
+ * Finds all zombie stereotypes, and repair them with the default action.
+ *
+ * If the profile can't be found automatically, the profileMappings map is used
+ *
+ * @throws InterruptedException
+ * @throws RollbackException
+ */
+ public void execute() throws InterruptedException, RollbackException {
+ ZombieStereotypesDescriptor result = null;
+
+ LabelProviderService labelProvider = new LabelProviderServiceImpl();
+ try {
+ labelProvider.startService();
+ } catch (Exception ex) {
+ Activator.log.error(ex);
+ return;
+ }
+
+ Function<? super EPackage, Profile> profileSupplier = getProfileSupplier();
+
+ for (Resource resource : resourcesToRepair) {
+ Element rootElement = (Element) EcoreUtil.getObjectByType(resource.getContents(), UMLPackage.Literals.ELEMENT);
+
+ if (rootElement == null || rootElement.getNearestPackage() == null) {
+ continue;
+ }
+
+ Package rootPackage = rootElement.getNearestPackage();
+
+ Collection<ProfileApplication> profileApplications = Lists.newArrayList();
+ for (TreeIterator<EObject> iter = EcoreUtil.getAllProperContents(Collections.singleton(rootPackage), false); iter.hasNext();) {
+ EObject next = iter.next();
+ if (next instanceof ProfileApplication) {
+ profileApplications.add((ProfileApplication) next);
+ iter.prune();
+ } else if (!(next instanceof Package) && !(next instanceof Component)) {
+ // No sense looking for packages except in the things that can contain packages
+ iter.prune();
+ }
+ }
+
+ Set<EPackage> appliedDefinitions = getAppliedDefinitions(profileApplications);
+
+ ZombieStereotypesDescriptor zombies = new ZombieStereotypesDescriptor(resource, rootPackage, appliedDefinitions, profileSupplier, labelProvider);
+
+ for (EObject next : resource.getContents()) {
+ if (!(next instanceof Element)) {
+ zombies.analyze(next);
+ }
+ }
+
+ if (zombies.hasZombies()) {
+ result = zombies;
+ }
+
+ if (result == null) {
+ continue;
+ }
+
+ final ZombieStereotypesDescriptor descriptor = result;
+
+ final TransactionalEditingDomain domain = modelSet.getTransactionalEditingDomain();
+
+
+ InternalTransactionalEditingDomain internalDomain = (InternalTransactionalEditingDomain) domain;
+
+ Map<String, Object> options = new HashMap<String, Object>();
+ options.put(Transaction.OPTION_NO_UNDO, true);
+ options.put(Transaction.OPTION_NO_VALIDATION, true);
+ options.put(Transaction.OPTION_NO_TRIGGERS, true);
+ options.put(Transaction.OPTION_UNPROTECTED, true);
+
+ // We're in a batch environment, with no undo/redo support. Run a vanilla transaction to improve performances
+ Transaction fastTransaction = internalDomain.startTransaction(false, options);
+ try {
+ final BasicDiagnostic diagnostics = new BasicDiagnostic(Activator.PLUGIN_ID, 0, "Problems in repairing stereotypes", null);
+
+ for (IAdaptable packageToRepair : descriptor.getZombieSchemas()) {
+ IRepairAction action = descriptor.getRepairAction(packageToRepair, IRepairAction.Kind.APPLY_LATEST_PROFILE_DEFINITION);
+ descriptor.repair(packageToRepair, action, diagnostics, new NullProgressMonitor());
+ }
+ } finally {
+ fastTransaction.commit();
+ }
+
+ }
+
+ try {
+ labelProvider.disposeService();
+ } catch (ServiceException ex) {
+ Activator.log.error(ex);
+ }
+ }
+
+ /**
+ * Maps a zombie EPackage with an existing Profile. Called only if the Profile can't be resolved automatically
+ *
+ * @return
+ */
+ protected Function<? super EPackage, Profile> getProfileSupplier() {
+ return new Function<EPackage, Profile>() {
+
+ // If we're here, we didn't find a perfect match for the profile. We need to make some guesses
+ @Override
+ public Profile apply(EPackage input) {
+ if (input.eResource() == null || input.eResource().getURI() == null) {
+ return null;
+ }
+
+ URI packageResourceURI = input.eResource().getURI();
+ URI targetResourceURI = profileMappings.get(packageResourceURI);
+
+ Profile result = null;
+ URI selectedProfileURI = targetResourceURI;
+ if (selectedProfileURI != null) {
+ result = EMFHelper.load(modelSet, selectedProfileURI, Profile.class);
+
+ // If there is a single Profile, there is no ambiguity. Just return it
+ if ((result != null) && !hasNestedProfiles(result)) {
+ return result;
+ }
+
+ // TODO: handle the case with nested profiles (We already opened a popup dialog earlier; wouldn't be a good idea to pop another dialog here)
+ }
+
+ return null;
+ }
+
+ boolean hasNestedProfiles(Profile profile) {
+ return Iterators.any(profile.eAllContents(), Predicates.instanceOf(Profile.class));
+ }
+ };
+ }
+
+ protected Set<EPackage> getAppliedDefinitions(Iterable<? extends ProfileApplication> profileApplications) {
+ Set<EPackage> result = Sets.newHashSet();
+
+ for (ProfileApplication next : profileApplications) {
+ EPackage definition = next.getAppliedDefinition();
+ if ((definition != null) && !definition.eIsProxy()) {
+ result.add(definition);
+ }
+ }
+
+ return result;
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ui/RegisteredItemLabelProvider.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ui/RegisteredItemLabelProvider.java
new file mode 100644
index 0000000..0adaef1
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ui/RegisteredItemLabelProvider.java
@@ -0,0 +1,43 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.transformation.ui;
+
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.papyrus.uml.extensionpoints.IRegisteredItem;
+import org.eclipse.swt.graphics.Image;
+
+/**
+ * Label Provider for RegisteredItems (Libraries & Profiles)
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class RegisteredItemLabelProvider extends LabelProvider {
+ @Override
+ public Image getImage(Object element) {
+ if (element instanceof IRegisteredItem) {
+ IRegisteredItem library = (IRegisteredItem) element;
+ return library.getImage();
+ }
+ return super.getImage(element);
+ }
+
+ @Override
+ public String getText(Object element) {
+ if (element instanceof IRegisteredItem) {
+ IRegisteredItem library = (IRegisteredItem) element;
+ return library.getName();
+ }
+
+ return super.getText(element);
+ }
+}
\ No newline at end of file
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ui/URIMappingDialog.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ui/URIMappingDialog.java
new file mode 100644
index 0000000..b643ccf
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/transformation/ui/URIMappingDialog.java
@@ -0,0 +1,367 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.transformation.ui;
+
+import java.text.Collator;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.LinkedHashMap;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.jface.dialogs.IDialogConstants;
+import org.eclipse.jface.viewers.ColumnLabelProvider;
+import org.eclipse.jface.viewers.ColumnWeightData;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.TableLayout;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.viewers.ViewerCell;
+import org.eclipse.jface.viewers.ViewerComparator;
+import org.eclipse.jface.window.Window;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
+import org.eclipse.papyrus.infra.services.labelprovider.service.impl.LabelProviderServiceImpl;
+import org.eclipse.papyrus.infra.widgets.editors.TreeSelectorDialog;
+import org.eclipse.papyrus.infra.widgets.providers.CollectionContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.EncapsulatedContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.StaticContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.WorkspaceContentProvider;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.MappingParameters;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.URIMapping;
+import org.eclipse.papyrus.interoperability.rsa.transformation.DependencyAnalysisHelper;
+import org.eclipse.papyrus.uml.extensionpoints.IRegisteredItem;
+import org.eclipse.papyrus.uml.extensionpoints.Registry;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.ui.dialogs.SelectionDialog;
+
+/**
+ * Opens a dialog allowing the user to manipulate/change the URIMappings of the transformation
+ * (Dependency repair)
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class URIMappingDialog extends SelectionDialog {
+
+ MappingParameters mappingParameters, result;
+
+ TableViewer viewer;
+
+ LabelProviderService labelProviderService;
+
+ private static final int BROWSE_WORKSPACE_ID = IDialogConstants.CLIENT_ID + 1;
+
+ private static final int BROWSE_REGISTERED_ID = IDialogConstants.CLIENT_ID + 2;
+
+ private static final int BROWSE_PROFILES_ID = IDialogConstants.CLIENT_ID + 3;
+
+ List<URIMapping> allMappings;
+
+ final DependencyAnalysisHelper dependencyHelper;
+
+ public URIMappingDialog(Shell shell, MappingParameters mappingParameters, DependencyAnalysisHelper dependencyHelper) {
+ super(shell);
+ this.dependencyHelper = dependencyHelper;
+ this.mappingParameters = mappingParameters;
+ }
+
+ @Override
+ protected void configureShell(Shell shell) {
+ setTitle("Some dependencies are missing");
+ super.configureShell(shell);
+ }
+
+ @Override
+ protected Control createDialogArea(Composite parent) {
+ Composite area = (Composite) super.createDialogArea(parent);
+
+ labelProviderService = new LabelProviderServiceImpl();
+ try {
+ labelProviderService.startService();
+ } catch (ServiceException e) {
+ Activator.log.error(e);
+ }
+
+ Label description = new Label(area, SWT.WRAP);
+ description.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
+ description.setText("Some elements in the following resources can't be resolved. Please choose the resources to replace them.");
+
+ Composite self = new Composite(area, SWT.NONE);
+ self.setLayout(new GridLayout(1, true));
+ self.setLayoutData(new GridData(GridData.FILL_BOTH));
+
+ // Do a copy: if Cancel is pressed, it can be discarded
+ result = EcoreUtil.copy(mappingParameters);
+ setResult(Collections.singletonList(mappingParameters)); // Default result (If Cancel is pressed)
+
+ Composite buttonsBarComposite = new Composite(self, SWT.NONE);
+
+ GridLayout buttonsLayout = new GridLayout(0, false);
+ buttonsLayout.marginWidth = 0;
+
+ buttonsBarComposite.setLayout(buttonsLayout);
+ buttonsBarComposite.setLayoutData(new GridData(SWT.END, SWT.CENTER, false, false));
+
+ Button browseWorkspace = createButton(buttonsBarComposite, BROWSE_WORKSPACE_ID, "", false);
+ browseWorkspace.setImage(org.eclipse.papyrus.infra.widgets.Activator.getDefault().getImage("icons/browse_12x12.gif"));
+ browseWorkspace.setToolTipText("Browse Workspace");
+ Button browseRegistered = createButton(buttonsBarComposite, BROWSE_REGISTERED_ID, "", false);
+ browseRegistered.setImage(org.eclipse.papyrus.infra.widgets.Activator.getDefault().getImage("icons/Add_12x12.gif"));
+ browseRegistered.setToolTipText("Browse Registered Libraries");
+ Button browseProfiles = createButton(buttonsBarComposite, BROWSE_PROFILES_ID, "", false);
+ browseProfiles.setImage(org.eclipse.papyrus.infra.widgets.Activator.getDefault().getImage("icons/AddReg.gif"));
+ browseProfiles.setToolTipText("Browse Registered Profiles");
+
+ viewer = new TableViewer(self, SWT.FULL_SELECTION | SWT.BORDER);
+ Table table = viewer.getTable();
+ TableLayout layout = new TableLayout();
+ table.setLayout(layout);
+ GridData tableData = new GridData(SWT.FILL, SWT.FILL, true, true);
+
+ tableData.minimumHeight = 120;
+ table.setLayoutData(tableData);
+ table.setHeaderVisible(true);
+
+ TableColumn locationColumn = new TableColumn(table, SWT.NONE);
+ locationColumn.setText("Location");
+ layout.addColumnData(new ColumnWeightData(50, 250, true));
+
+ TableColumn newLocationColumn = new TableColumn(table, SWT.NONE);
+ newLocationColumn.setText("New Location");
+ layout.addColumnData(new ColumnWeightData(50, 250, true));
+
+ viewer.setContentProvider(CollectionContentProvider.instance);
+
+ viewer.setLabelProvider(new URIColumnsLabelProvider());
+ viewer.setComparator(new ViewerComparator() {
+ @Override
+ public int compare(Viewer viewer, Object e1, Object e2) {
+ if (e1 instanceof URIMapping && e2 instanceof URIMapping) {
+ URIMapping map1 = (URIMapping) e1;
+ URIMapping map2 = (URIMapping) e2;
+
+ return Collator.getInstance().compare(map1.getSourceURI(), map2.getSourceURI());
+ }
+ return 0;
+ }
+ });
+
+ allMappings = dependencyHelper.flattenURIMappings(result);
+
+ viewer.setInput(allMappings);
+
+ viewer.addSelectionChangedListener(new ISelectionChangedListener() {
+
+ @Override
+ public void selectionChanged(SelectionChangedEvent event) {
+ updateControls();
+ }
+ });
+
+ updateControls();
+
+ return self;
+ }
+
+ @Override
+ public boolean close() {
+ try {
+ labelProviderService.disposeService();
+ } catch (Exception e) {
+ Activator.log.error(e);
+ }
+ return super.close();
+ }
+
+ protected void updateControls() {
+ boolean enableBrowse = !viewer.getSelection().isEmpty();
+
+ getButton(BROWSE_REGISTERED_ID).setEnabled(enableBrowse);
+ getButton(BROWSE_WORKSPACE_ID).setEnabled(enableBrowse);
+ getButton(BROWSE_PROFILES_ID).setEnabled(enableBrowse);
+
+ viewer.refresh();
+ }
+
+ @Override
+ protected void buttonPressed(int buttonId) {
+ switch (buttonId) {
+ case BROWSE_REGISTERED_ID:
+ browseRegisteredLibraries();
+ return;
+ case BROWSE_WORKSPACE_ID:
+ browseWorkspaceLibraries();
+ return;
+ case BROWSE_PROFILES_ID:
+ browseRegisteredProfiles();
+ return;
+ }
+
+ super.buttonPressed(buttonId);
+ }
+
+ protected URIMapping getSelectedMapping() {
+ ISelection selection = viewer.getSelection();
+ if (selection.isEmpty()) {
+ return null;
+ }
+
+ if (selection instanceof IStructuredSelection) {
+ Object selectedElement = ((IStructuredSelection) selection).getFirstElement();
+ if (selectedElement instanceof URIMapping) {
+ return (URIMapping) selectedElement;
+ }
+ }
+
+ return null;
+ }
+
+ protected void browseWorkspaceLibraries() {
+ if (getSelectedMapping() == null) {
+ return;
+ }
+
+ Map<String, String> extensionFilters = new LinkedHashMap<String, String>();
+ extensionFilters.put("*.uml", "UML (*.uml)");
+ extensionFilters.put("*", "All (*)");
+
+ TreeSelectorDialog dialog = new TreeSelectorDialog(getShell());
+ dialog.setTitle("Browse Workspace");
+ dialog.setDescription("Select a library in the workspace.");
+ WorkspaceContentProvider workspaceContentProvider = new WorkspaceContentProvider();
+ workspaceContentProvider.setExtensionFilters(extensionFilters);
+ dialog.setContentProvider(workspaceContentProvider);
+
+ dialog.setLabelProvider(labelProviderService.getLabelProvider());
+
+
+ if (dialog.open() == Window.OK) {
+ Object[] result = dialog.getResult();
+ if (result == null || result.length == 0) {
+ return;
+ }
+
+ Object selectedFile = result[0];
+
+ if (selectedFile instanceof IFile) {
+ IPath filePath = ((IFile) selectedFile).getFullPath();
+ URI workspaceURI = URI.createPlatformResourceURI(filePath.toString(), true);
+
+ replaceSelectionWith(workspaceURI);
+ }
+ }
+ }
+
+ protected void replaceSelectionWith(URI targetURI) {
+ URIMapping mapping = getSelectedMapping();
+ mapping.setTargetURI(targetURI.toString());
+ updateControls();
+ }
+
+ protected void browseRegisteredLibraries() {
+ browseRegisteredItems(Registry.getRegisteredLibraries(), "Browse Registered Libraries", "Select one of the registered libraries below.");
+ }
+
+ protected void browseRegisteredProfiles() {
+ browseRegisteredItems(Registry.getRegisteredProfiles(), "Browse Registered Profiles", "Select one of the registered profiles below.");
+ }
+
+ protected void browseRegisteredItems(Collection<? extends IRegisteredItem> items, String dialogTitle, String dialogDescription) {
+ TreeSelectorDialog dialog = new TreeSelectorDialog(getShell());
+ dialog.setTitle(dialogTitle);
+ dialog.setDescription(dialogDescription);
+ dialog.setContentProvider(new EncapsulatedContentProvider(new StaticContentProvider(items.toArray(new IRegisteredItem[0]))));
+ dialog.setLabelProvider(new RegisteredItemLabelProvider());
+
+ if (dialog.open() == Window.OK) {
+ Object[] result = dialog.getResult();
+ if (result == null || result.length == 0) {
+ return;
+ }
+
+ Object selectedElement = result[0];
+ if (selectedElement instanceof IRegisteredItem) {
+ IRegisteredItem item = (IRegisteredItem) selectedElement;
+
+ replaceSelectionWith(item.getUri());
+ }
+ }
+ }
+
+ @Override
+ protected void okPressed() {
+ dependencyHelper.propagateURIMappings(allMappings, result);
+ setResult(Collections.singletonList(result)); // Set the new result
+ super.okPressed();
+ }
+
+
+
+ private class URIColumnsLabelProvider extends ColumnLabelProvider {
+
+ @Override
+ public void update(ViewerCell cell) {
+ Object element = cell.getElement();
+
+ URIMapping mapping = (element instanceof URIMapping) ? (URIMapping) element : null;
+
+ switch (cell.getColumnIndex()) {
+ case 0:
+ updateLocation(cell, mapping);
+ break;
+ case 1:
+ updateNewLocation(cell, mapping);
+ break;
+ }
+
+ }
+
+ public void updateLocation(ViewerCell cell, URIMapping mapping) {
+ String location = "Unknown";
+ if (mapping != null) {
+ location = mapping.getSourceURI();
+ }
+
+ cell.setText(location);
+ }
+
+ public void updateNewLocation(ViewerCell cell, URIMapping mapping) {
+ String location = "";
+
+ if (mapping.getTargetURI() != null) {
+ location = mapping.getTargetURI();
+ }
+
+ cell.setText(location);
+ }
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/utils/CreateFile.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/utils/CreateFile.java
new file mode 100644
index 0000000..4e7a2a9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/utils/CreateFile.java
@@ -0,0 +1,161 @@
+package org.eclipse.papyrus.interoperability.rsa.utils;
+
+import java.io.BufferedReader;
+import java.io.BufferedWriter;
+import java.io.ByteArrayInputStream;
+import java.io.ByteArrayOutputStream;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.io.PrintWriter;
+import java.net.URL;
+import java.security.CodeSource;
+import java.security.ProtectionDomain;
+import java.util.jar.JarEntry;
+import java.util.jar.JarFile;
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.NullProgressMonitor;
+
+public class CreateFile {
+
+ public static IFile createFile(String filePath, IContainer container, String content)
+ throws Exception
+ {
+ IFile file = null;
+ if ((container instanceof IProject)) {
+ file = ((IProject) container).getFile(filePath);
+ } else if ((container instanceof IFolder)) {
+ file = ((IFolder) container).getFile(filePath);
+ } else {
+ throw new Exception("Cannot find the file " +
+ filePath +
+ " under " +
+ container.getName());
+ }
+ IContainer parent = file.getParent();
+ if ((parent instanceof IFolder)) {
+ mkdirs((IFolder) parent);
+ }
+ InputStream stream = new ByteArrayInputStream(content.getBytes(file.getCharset()));
+ if (file.exists()) {
+ file.setContents(stream, true, true, null);
+ } else {
+ file.create(stream, true, null);
+ }
+ stream.close();
+
+ return file;
+ }
+
+ public static void mkdirs(IFolder folder)
+ throws CoreException
+ {
+ if (!folder.exists())
+ {
+ if ((folder.getParent() instanceof IFolder)) {
+ mkdirs((IFolder) folder.getParent());
+ }
+ folder.create(true, true, null);
+ }
+ }
+
+ public static String getContents(String relativePath, String resource, Class clazz)
+ throws IOException
+ {
+ String resourcePath = relativePath + '/' + resource;
+ File sourcePrj = getSourceProject(clazz);
+
+
+ JarFile jar = null;
+ InputStream resourceStream;
+ if (sourcePrj.isFile())
+ {
+ jar = new JarFile(sourcePrj);
+ JarEntry resEntry = jar.getJarEntry(resourcePath);
+ resourceStream = jar.getInputStream(resEntry);
+ }
+ else
+ {
+ resourceStream = new FileInputStream(sourcePrj.getAbsolutePath() +
+ "/" +
+ resourcePath);
+ }
+ byte[] buffer = new byte[4096];
+ ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
+ for (;;)
+ {
+ int read = resourceStream.read(buffer);
+ if (read == -1) {
+ break;
+ }
+ outputStream.write(buffer, 0, read);
+ }
+ outputStream.close();
+ resourceStream.close();
+ if (jar != null) {
+ jar.close();
+ }
+ return outputStream.toString("iso-8859-1");
+ }
+
+ private static File getSourceProject(Class clazz)
+ {
+ ProtectionDomain protectionDomain = clazz.getProtectionDomain();
+ CodeSource codeSource = protectionDomain.getCodeSource();
+ URL location = codeSource.getLocation();
+ File sourcePrj = new File(location.getFile());
+ return sourcePrj;
+ }
+
+ public static void appendContents(IFile pagesFile, String data)
+ throws IOException
+ {
+ File file = pagesFile.getLocation().toFile();
+ if (!file.exists()) {
+ file.createNewFile();
+ }
+ FileWriter fileWriter = new FileWriter(file, true);
+ BufferedWriter buffWriter = new BufferedWriter(fileWriter);
+ PrintWriter writer = new PrintWriter(buffWriter);
+ writer.println(data);
+ writer.close();
+ buffWriter.close();
+ fileWriter.close();
+ }
+
+ public static void replaceContents(IFile file, String template, String newContent)
+ throws CoreException, IOException
+ {
+ String content = getContents(file).replace(template, newContent);
+ InputStream stream = new ByteArrayInputStream(content.getBytes(file.getCharset()));
+ if (file.exists()) {
+ file.setContents(stream, true, true, new NullProgressMonitor());
+ }
+ stream.close();
+ }
+
+ public static String getContents(IFile iFile)
+ throws IOException
+ {
+ File file = iFile.getLocation().toFile();
+ FileInputStream stream = new FileInputStream(file);
+ StringBuffer contents = new StringBuffer();
+ BufferedReader br = new BufferedReader(new InputStreamReader(stream));
+ String line;
+ while ((line = br.readLine()) != null)
+ {
+ contents.append(line).append("\n");
+ }
+ br.close();
+ stream.close();
+ return contents.toString();
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/utils/CreateProject.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/utils/CreateProject.java
new file mode 100644
index 0000000..87569bc
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/utils/CreateProject.java
@@ -0,0 +1,132 @@
+package org.eclipse.papyrus.interoperability.rsa.utils;
+
+import java.io.File;
+import java.net.URI;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspace;
+import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.jface.dialogs.IInputValidator;
+import org.eclipse.jface.dialogs.InputDialog;
+import org.eclipse.jface.window.Window;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.ui.PlatformUI;
+
+public class CreateProject {
+
+ protected String projectName;
+
+ protected IProject createdProject;
+
+ protected Collection<Object> inputFiles;
+
+ public CreateProject(Collection<Object> inputFiles) {
+ this.projectName = getProjectName();
+ this.inputFiles = inputFiles;
+
+ if (projectName != null) {
+ try {
+ this.createdProject = createProject();
+ } catch (Exception e) {
+ Activator.log.error(e);
+ }
+ }
+ }
+
+
+ protected IProject createProject() throws Exception {
+ IWorkspace workspace = ResourcesPlugin.getWorkspace();
+ IProject project = workspace.getRoot().getProject(projectName);
+
+ if (! project.exists()){
+ project.create(new NullProgressMonitor());
+ }
+
+ if (! project.isOpen()){
+ project.open(new NullProgressMonitor());
+ }
+
+ if (inputFiles != null && !inputFiles.isEmpty()) {
+ // create resource folder
+ createFolder("resources", project, inputFiles);
+ }
+
+ return project;
+ }
+
+ protected void createFolder(String folderName, IProject project, Collection<Object> inputFiles) throws Exception {
+ IFolder folder = project.getFolder(folderName);
+ folder.create(false, true, null);
+
+ List<Object> inputList = new ArrayList<Object>(inputFiles);
+ for (Object object : inputList) {
+ File file = ((File) object);
+ IFile linkedFile = folder.getFile(file.getName());
+ URI fileURI = file.toURI();
+ linkedFile.createLink(fileURI, IResource.NONE, null);
+ }
+
+ }
+
+ protected void createBuildProps(IProject project, List<String> srcFolders) throws Exception {
+ StringBuilder bpContent = new StringBuilder("source.. = ");
+
+ if (srcFolders != null && !srcFolders.isEmpty()) {
+ for (Iterator<String> iterator = srcFolders.iterator(); iterator.hasNext();)
+ {
+ bpContent.append(iterator.next()).append(File.separatorChar);
+ if (iterator.hasNext()) {
+ bpContent.append(",");
+ }
+ }
+ }
+
+ bpContent.append("\n");
+ bpContent.append("bin.includes = META-INF/,.\n");
+ CreateFile.createFile("build.properties", project, bpContent.toString());
+ }
+
+
+ public IProject getCreatedProject() {
+ return this.createdProject;
+ }
+
+ protected String getProjectName() {
+ String init_value = "project_" + System.currentTimeMillis();
+
+ Shell activeShell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+
+ InputDialog dialog = new InputDialog(activeShell, "Create Project", "Provide project name...", init_value, new IInputValidator() {
+ @Override
+ public String isValid(String newText)
+ {
+ IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
+ IProject[] projs = root.getProjects();
+ for (int i = 0; i < projs.length; i++) {
+ if (projs[i].getName().equalsIgnoreCase(newText)) {
+ return "This project already exists";
+ }
+ }
+
+ return null;
+ }
+ });
+
+ if (dialog.open() == Window.CANCEL) {
+ return null;
+ }
+
+ return dialog.getValue();
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/TransformationWizard.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/TransformationWizard.java
new file mode 100644
index 0000000..286d01c
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/TransformationWizard.java
@@ -0,0 +1,174 @@
+/*****************************************************************************
+ * Copyright (c) 2014, 2017 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 505330
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.wizard;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.jface.wizard.Wizard;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.internal.ConfigurationManager;
+import org.eclipse.papyrus.interoperability.rsa.messages.Messages;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformationLauncher;
+import org.eclipse.papyrus.interoperability.rsa.wizard.pages.DialogData;
+import org.eclipse.papyrus.interoperability.rsa.wizard.pages.TransformationConfigPage;
+import org.eclipse.papyrus.interoperability.rsa.wizard.pages.TransformationSelectionPage;
+import org.eclipse.ui.IImportWizard;
+import org.eclipse.ui.IWorkbench;
+
+/**
+ *
+ * Wizard handling the selection and transformation of .emx/.epx files
+ *
+ * @author Quentin Le Menez
+ *
+ */
+public class TransformationWizard extends Wizard implements IImportWizard {
+
+ protected IWizardPage currentPage;
+
+ protected DialogData dialogData = new DialogData();
+
+ protected TransformationSelectionPage selectionPage = new TransformationSelectionPage(dialogData);
+
+ protected TransformationConfigPage configPage = new TransformationConfigPage(dialogData);
+
+ private ConfigurationManager configMan = new ConfigurationManager();
+
+ public TransformationWizard() {
+ setWindowTitle(Messages.TransformationWizard_Title);
+
+ configMan.loadConfig(dialogData.getConfig());
+ }
+
+ @Override
+ public void dispose() {
+ try {
+ configMan.dispose();
+ } finally {
+ super.dispose();
+ }
+ }
+
+ @Override
+ public void addPages() {
+ this.addPage(selectionPage);
+ this.addPage(configPage);
+ }
+
+ @Override
+ public IWizardPage getNextPage(IWizardPage currentPage) {
+ if (currentPage == selectionPage) {
+ this.currentPage = configPage;
+ // Resets the viewer input in order to show the newly selected elements from the selectionPage
+ configPage.resetViewerInput();
+ return configPage;
+ }
+ if (this.currentPage == configPage) {
+ this.currentPage = selectionPage;
+ }
+ return null;
+ }
+
+ @Override
+ public boolean canFinish() {
+ if (currentPage == configPage) {
+ return super.canFinish();
+ }
+ return false;
+ }
+
+ @Override
+ public boolean performCancel() {
+ removeWizardImportedProjects();
+ return super.performCancel();
+ }
+
+ @Override
+ public boolean performFinish() {
+ configMan.saveConfig(dialogData.getConfig());
+
+ // Set or update the unchecked elements for future executions of the plugin
+ dialogData.setSelectionMap();
+ importFiles();
+
+ // Remove the imported projects from the workspace
+ // removeWizardImportedProjects();
+
+ return true;
+ }
+
+
+ /**
+ *
+ * Remove any imported projects, through the wizard, from the workspace
+ *
+ */
+ public void removeWizardImportedProjects() {
+ if (/* dialogData != null && */dialogData.getImportedProjects() != null) {
+ for (Object object : dialogData.getImportedProjects()) {
+ if (object instanceof IProject) {
+ IProject project = (IProject) object;
+ try {
+ project.delete(false, true, null);
+ } catch (CoreException e) {
+ Activator.log.error(e);
+ }
+ }
+ }
+ }
+ }
+
+ /**
+ *
+ * Launch the transformation with the previously selected files and configuration parameters
+ *
+ */
+ protected void importFiles() {
+ Config config = dialogData.getConfig();
+ if (config == null) {
+ return;
+ }
+
+ List<URI> urisToImport = new LinkedList<URI>();
+
+ for (Object selectedFile : dialogData.getTransformationFiles()) {
+ String path = null;
+ if (selectedFile instanceof IFile) {
+ path = ((IFile) selectedFile).getFullPath().toString();
+ }
+ if (path != null) {
+ URI uri = URI.createPlatformResourceURI(path, true);
+ urisToImport.add(uri);
+ }
+ }
+
+ // The wizard's Shell will be disposed because the transformation is asynchronous. Use the Shell's parent instead
+ ImportTransformationLauncher launcher = new ImportTransformationLauncher(config, this.getShell().getParent());
+ launcher.run(urisToImport);
+ }
+
+ @Override
+ public void init(IWorkbench workbench, IStructuredSelection selection) {
+ // nothing
+ }
+
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogData.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogData.java
new file mode 100644
index 0000000..b52e49e
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogData.java
@@ -0,0 +1,269 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.wizard.pages;
+
+import java.io.File;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.LinkedList;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.papyrus.infra.widgets.util.FileUtil;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory;
+import org.eclipse.papyrus.interoperability.rsa.constants.TransformationWizardConstants;
+
+/**
+ *
+ * Class containing the bulk of the wizard's data for an easy access throughout the wizard
+ *
+ * @author Quentin Le Menez
+ *
+ */
+public class DialogData {
+
+ protected Collection<Object> selectedFiles;
+
+ protected Collection<Object> systemSelectedFiles;
+
+ protected Collection<Object> transformationFiles;
+
+ protected Config config = RSAToPapyrusParametersFactory.eINSTANCE.createConfig();
+
+ protected Collection<String> unselectedFiles;
+
+ public IDialogSettings dialogSection;
+
+ protected Collection<Object> uncheckedFiles;
+
+ protected Collection<Object> importedProjects;
+
+ /**
+ *
+ * Constructor, instantiate the configuration file to store the user's selections, if none exist, or retrieve it
+ *
+ */
+ public DialogData() {
+ // Necessary for storing and recalling the previous selections
+ dialogSection = Activator.getDefault().getDialogSettings().getSection(TransformationWizardConstants.TRANSFORMATION_WIZARD_SETTINGS);
+ if (dialogSection == null) {
+ dialogSection = Activator.getDefault().getDialogSettings().addNewSection(TransformationWizardConstants.TRANSFORMATION_WIZARD_SETTINGS);
+ }
+
+ systemSelectedFiles = new LinkedList<Object>();
+ }
+
+ /**
+ *
+ * @param selectedFiles
+ * The selected files from the workspace to be displayed in the transformation page
+ */
+ public void setSelectedFiles(Collection<Object> selectedFiles) {
+ this.selectedFiles = selectedFiles;
+ }
+
+ /**
+ *
+ * @param selectedFiles
+ * The selected files outside of the workspace to be displayed in the transformation page
+ */
+ public void setSystemSelectedFiles(Collection<String> systemPaths) {
+ for (String filePath : systemPaths) {
+ File file = new File(filePath);
+ if (file != null && !systemSelectedFiles.contains(file)) {
+ systemSelectedFiles.add(file);
+ }
+ }
+ }
+
+ /**
+ *
+ * @param transformationFiles
+ * The selected files in the configuration page to be transformed
+ */
+ public void setTransformationFiles(Collection<Object> transformationFiles) {
+ this.transformationFiles = transformationFiles;
+ }
+
+ /**
+ *
+ * @return
+ * The default extensions used to filter the workspace
+ */
+ public String[] getExtensions() {
+ return TransformationWizardConstants.EXTENSIONS;
+ }
+
+ /**
+ *
+ * @return
+ * The default extensions' name used to filter the workspace
+ */
+ public String[] getExtensionsNames() {
+ return TransformationWizardConstants.EXTENSIONS_NAMES;
+ }
+
+ /**
+ *
+ * @return
+ * The selected files from the workspace
+ */
+ public Collection<Object> getSelectedFiles() {
+ return selectedFiles;
+ }
+
+ /**
+ *
+ * @return
+ * The selected files outside of the workspace
+ */
+ public Collection<Object> getSystemSelectedFiles() {
+ return systemSelectedFiles;
+ }
+
+ /**
+ *
+ * @return
+ * The selected files from both workspace and outside selections
+ */
+ public Collection<Object> getAllSelectedFiles() {
+ Collection<Object> allSelectedFiles = new LinkedList<Object>();
+ if (selectedFiles != null && selectedFiles.size() > 0) {
+ // TODO select only the files that are not already present in the selection done outside of the workspace
+ // Test
+ // for (Object object : selectedFiles) {
+ // if (!systemSelectedFiles.contains(object)) {
+ // allSelectedFiles.add(object);
+ // }
+ // }
+ // endTest
+ allSelectedFiles.addAll(selectedFiles);
+ }
+ // if (systemSelectedFiles != null && systemSelectedFiles.size() > 0) {
+ // allSelectedFiles.addAll(systemSelectedFiles);
+ // }
+ return allSelectedFiles;
+ }
+
+ /**
+ *
+ * @return
+ * The parameters used for the transformation
+ */
+ public Config getConfig() {
+ return config;
+ }
+
+ /**
+ *
+ * @return
+ * The selected files to be transformed
+ */
+ public Collection<Object> getTransformationFiles() {
+ return transformationFiles;
+ }
+
+ /**
+ *
+ * @param uncheckedFiles
+ * The selected files to be ignored during the transformation
+ */
+ public void setUncheckedFiles(Collection<Object> uncheckedFiles) {
+ this.uncheckedFiles = uncheckedFiles;
+ }
+
+ /**
+ *
+ * Sets or updates the projects to be imported in the workspace
+ *
+ * @param importedProjects
+ * The selcted projects
+ */
+ public void setImportedProjects(Collection<Object> importedProjects) {
+ this.importedProjects = importedProjects;
+ }
+
+ /**
+ *
+ * @return
+ * The imported projects
+ */
+ public Collection<Object> getImportedProjects() {
+ return this.importedProjects;
+ }
+
+ /**
+ *
+ * Update or create the selection map stored inside the configuration file in order to remember the previous selection choices
+ *
+ */
+ public void setSelectionMap() {
+ // Retrieve or create the list of unselected elements
+ if (getUnSelectionArray() != null) {
+ unselectedFiles = new LinkedList<String>(Arrays.asList(getUnSelectionArray()));
+ }
+ else {
+ unselectedFiles = new LinkedList<String>();
+ }
+ // Updates the unselected files for future references
+ for (Object object : uncheckedFiles) {
+ if (object instanceof IFile) {
+ IFile ifile = (IFile) object;
+ String ifilePath = FileUtil.getPath(ifile, true);
+ if (!unselectedFiles.contains(ifilePath)) {
+ unselectedFiles.add(ifilePath);
+ }
+ }
+ if (object instanceof File) {
+ File file = (File) object;
+ String filePath = file.getAbsolutePath();
+ if (!unselectedFiles.contains(filePath)) {
+ unselectedFiles.add(filePath);
+ }
+ }
+ }
+ // Remove any newly selected files from the unselected files pool
+ for (Object object : transformationFiles) {
+ if (object instanceof IFile) {
+ IFile ifile = (IFile) object;
+ String ifilePath = FileUtil.getPath(ifile, true);
+ if (unselectedFiles.contains(ifilePath)) {
+ unselectedFiles.remove(ifilePath);
+ }
+ }
+ if (object instanceof File) {
+ File file = (File) object;
+ String filePath = file.getAbsolutePath();
+ if (unselectedFiles.contains(filePath)) {
+ unselectedFiles.remove(filePath);
+ }
+ }
+ }
+
+ // Update the map
+ dialogSection.put(TransformationWizardConstants.WIZARD_SELECTION_KEY, unselectedFiles.toArray(new String[unselectedFiles.size()]));
+ }
+
+ /**
+ *
+ * Used to set the checked state of the selected files inside the viewer
+ *
+ * @return
+ * The user's previously unchecked files in the configPage
+ */
+ public String[] getUnSelectionArray() {
+ return dialogSection.getArray(TransformationWizardConstants.WIZARD_SELECTION_KEY);
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogDataConfigComposite.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogDataConfigComposite.java
new file mode 100644
index 0000000..1cb55c8
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogDataConfigComposite.java
@@ -0,0 +1,200 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.wizard.pages;
+
+import java.io.File;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.LinkedList;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.papyrus.infra.widgets.util.FileUtil;
+import org.eclipse.papyrus.interoperability.rsa.messages.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ *
+ * Actual composite used to display the previously selected elements and the migration options
+ *
+ * @author Quentin Le Menez
+ *
+ */
+public class DialogDataConfigComposite extends ImportConfigComposite {
+
+ protected DialogData dialogData;
+
+ protected SelectionListener buttonListener;
+
+ protected Button selectAll;
+
+ protected Button deselectAll;
+
+ /**
+ *
+ * Constructor used when a DialogData class is employed to store the different informations of the dialog
+ *
+ * @param parent
+ * The parent composite
+ * @param style
+ * The swt style used for this ConfigurationComposite
+ * @param dialogData
+ * The DialogData in which is stored all the necessary informations
+ */
+ public DialogDataConfigComposite(Composite parent, int style, DialogData dialogData) {
+ super(parent, style, dialogData.getConfig());
+ this.dialogData = dialogData;
+ this.setViewerInput(dialogData.getSelectedFiles());
+ }
+
+
+ /**
+ *
+ * Fills the composite with the selection buttons
+ *
+ * @param parent
+ * The parent composite
+ */
+ @Override
+ protected void createSelectionButtons(Composite parent) {
+ Composite buttonsComposite = new Composite(parent, SWT.NONE);
+ buttonsComposite.setLayout(new GridLayout());
+
+ buttonListener = new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent event) {
+ fireButtonSelectionEvent(event);
+ }
+ };
+
+ selectAll = new Button(buttonsComposite, SWT.PUSH);
+ selectAll.setData(true);
+ selectAll.setText(Messages.Button_SelectAll);
+ selectAll.addSelectionListener(buttonListener);
+ selectAll.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
+
+ deselectAll = new Button(buttonsComposite, SWT.PUSH);
+ deselectAll.setData(false);
+ deselectAll.setText(Messages.Button_DeselectAll);
+ deselectAll.addSelectionListener(buttonListener);
+ deselectAll.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
+
+ }
+
+ /**
+ *
+ * Handles the selections inside the tableViewer
+ *
+ * @param event
+ * The event linked to the tableViewer's selection buttons
+ */
+ protected void fireButtonSelectionEvent(SelectionEvent event) {
+ listViewer.setAllChecked((Boolean) ((Button) event.widget).getData());
+ setTransformationFiles();
+ setUncheckedFiles();
+
+ if (dialogData != null) {
+ dialogData.setTransformationFiles(transformationFiles);
+ dialogData.setUncheckedFiles(uncheckedFiles);
+ }
+ }
+
+ @Override
+ protected void fireSelectionEvent(SelectionChangedEvent event) {
+ transformationFiles = new LinkedList<Object>(Arrays.asList(listViewer.getCheckedElements()));
+ setUncheckedFiles();
+
+ if (dialogData != null) {
+ dialogData.setTransformationFiles(transformationFiles);
+ dialogData.setUncheckedFiles(uncheckedFiles);
+ }
+ }
+
+ @Override
+ public void setViewerInput(Collection<Object> selectedFiles) {
+ listViewer.setInput(selectedFiles);
+
+ if (dialogData != null) {
+ if (dialogData.getUnSelectionArray() == null) {
+ // Default selection when opening the viewer without previous executions
+ listViewer.setAllChecked(true);
+ }
+ else {
+ // Recall the last unselected files to update the display
+ Collection<String> previousUnSelection = Arrays.asList(dialogData.getUnSelectionArray());
+ for (Object object : selectedFiles) {
+ if (object instanceof IFile) {
+ IFile ifile = (IFile) object;
+ String ifilePath = FileUtil.getPath(ifile, true);
+ if (previousUnSelection.contains(ifilePath)) {
+ listViewer.setChecked(object, false);
+ }
+ else {
+ listViewer.setChecked(object, true);
+ }
+ }
+ else if (object instanceof File) {
+ File file = (File) object;
+ String filePath = file.getAbsolutePath();
+ if (previousUnSelection.contains(filePath)) {
+ listViewer.setChecked(object, false);
+ }
+ else {
+ listViewer.setChecked(object, true);
+ }
+ }
+ }
+ }
+
+ setTransformationFiles();
+ setUncheckedFiles();
+
+ dialogData.setTransformationFiles(transformationFiles);
+ dialogData.setUncheckedFiles(uncheckedFiles);
+ }
+ }
+
+ /**
+ *
+ * Updates the unchecked files in the wizard's dialog settings to remember the last selection when reopening the wizard
+ *
+ */
+ protected void setUncheckedFiles() {
+ if (dialogData != null) {
+ uncheckedFiles = new LinkedList<Object>();
+ for (Object object : dialogData.getAllSelectedFiles()) {
+ if (!transformationFiles.contains(object)) {
+ uncheckedFiles.add(object);
+ }
+ }
+ dialogData.setUncheckedFiles(uncheckedFiles);
+ }
+ }
+
+ @Override
+ public void dispose() {
+ if (buttonListener != null) {
+ selectAll.removeSelectionListener(buttonListener);
+ deselectAll.removeSelectionListener(buttonListener);
+ }
+
+ super.dispose();
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogDataTreeComposite.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogDataTreeComposite.java
new file mode 100644
index 0000000..e8bf01d
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/DialogDataTreeComposite.java
@@ -0,0 +1,335 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.wizard.pages;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectDescription;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.papyrus.infra.widgets.util.FileUtil;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.constants.TransformationWizardConstants;
+import org.eclipse.papyrus.interoperability.rsa.messages.Messages;
+import org.eclipse.papyrus.interoperability.rsa.utils.CreateProject;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.FileDialog;
+
+
+/**
+ *
+ * Actual composite used to display the workspace and select the wanted elements
+ *
+ * @author Quentin Le Menez
+ *
+ */
+public class DialogDataTreeComposite extends ImportTreeComposite {
+
+ protected DialogData dialogData;
+
+ protected String systemDialogFiles;
+
+ protected SelectionListener selectionButtonListener;
+
+ protected SelectionListener systemSelectionListener;
+
+ protected Button selectAllButton;
+
+ protected Button deselectAllButton;
+
+ protected Button systemSelectionButton;
+
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param parent
+ * The parent composite
+ * @param style
+ * The swt style used for this ConfigurationComposite
+ * @param dialogData
+ * The DialogData in which is stored all the necessary informations
+ */
+ public DialogDataTreeComposite(Composite parent, int style, DialogData dialogData) {
+ super(parent, style, dialogData.getExtensions(), dialogData.getExtensionsNames());
+
+ this.dialogData = dialogData;
+
+ ISelection treeSelection = treeViewer.getSelection();
+ if (treeSelection instanceof StructuredSelection) {
+ setSelectedFiles(((StructuredSelection) treeSelection).toArray());
+ this.dialogData.setSelectedFiles(getSelectedFiles());
+ }
+ }
+
+
+ @Override
+ protected void fireTreeSelectionEvent(SelectionChangedEvent event) {
+ ISelection selection = event.getSelection();
+
+ if (selection instanceof IStructuredSelection) {
+ // Updates the selected files
+ selectedFiles.clear();
+ IStructuredSelection sSelection = (IStructuredSelection) selection;
+ setSelectedFiles(sSelection.toArray());
+
+ if (dialogData != null) {
+ dialogData.setSelectedFiles(selectedFiles);
+ }
+ }
+
+ }
+
+ @Override
+ protected void createSelectionButtons(Composite parent) {
+ // The composite will contain three buttons, two general selection (all and none) and one for selections using a fileDialog window
+ selectionButtonsComposite = new Composite(parent, SWT.NONE);
+ selectionButtonsComposite.setLayout(new GridLayout());
+
+ systemSelectionListener = new SelectionAdapter() {
+
+ @Override
+ public void widgetSelected(SelectionEvent event) {
+ fireSystemBrowseEvent(event);
+ }
+ };
+
+ systemSelectionButton = new Button(selectionButtonsComposite, SWT.PUSH);
+ systemSelectionButton.setText(Messages.Button_FileSystemSelection);
+ systemSelectionButton.addSelectionListener(systemSelectionListener);
+ systemSelectionButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
+
+
+ selectionButtonListener = new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent event) {
+ fireButtonSelectionEvent(event);
+ }
+ };
+
+ selectAllButton = new Button(selectionButtonsComposite, SWT.PUSH);
+ selectAllButton.setText(Messages.Button_SelectAll);
+ selectAllButton.setData(true);
+ selectAllButton.addSelectionListener(selectionButtonListener);
+ selectAllButton.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
+
+ deselectAllButton = new Button(selectionButtonsComposite, SWT.PUSH);
+ deselectAllButton.setText(Messages.Button_DeselectAll);
+ deselectAllButton.setData(false);
+ deselectAllButton.addSelectionListener(selectionButtonListener);
+ deselectAllButton.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
+ }
+
+
+ /**
+ *
+ * Handles the selectAll/deselectAll options
+ *
+ * @param event
+ * The event linked to the selection buttons
+ */
+ protected void fireButtonSelectionEvent(SelectionEvent event) {
+ if ((Boolean) ((Button) event.widget).getData()) {
+ treeViewer.getTree().selectAll();
+ // Updates the selectedFiles collection
+ getNestedFiles(((IStructuredSelection) treeViewer.getSelection()).toArray());
+
+ if (dialogData != null) {
+ dialogData.setSelectedFiles(selectedFiles);
+ }
+ } else {
+ treeViewer.getTree().deselectAll();
+ selectedFiles.clear();
+
+ if (dialogData != null) {
+ dialogData.setSelectedFiles(selectedFiles);
+ }
+ }
+ }
+
+ /**
+ *
+ * handle the selections outside of the workspace
+ *
+ * @param event
+ * The event linked to the button
+ */
+ protected void fireSystemBrowseEvent(SelectionEvent event) {
+
+ // Clears the previous selection
+ dialogData.getSystemSelectedFiles().clear();
+ // Instantiates a new selection window
+ FileDialog dialog = new FileDialog(treeViewerComposite.getShell(), SWT.MULTI);
+ dialog.setText(Messages.FileDialogTitle);
+ dialog.setFilterExtensions(TransformationWizardConstants.EXTENSIONS);
+ dialog.setFilterNames(TransformationWizardConstants.EXTENSIONS_NAMES);
+
+ if (dialogData != null) {
+ // Fetches the last visited folder or uses the Home of the current user
+ if (dialogData.dialogSection.get(TransformationWizardConstants.FILEDIALOG_SELECTION_KEY) != null) {
+ dialog.setFilterPath(dialogData.dialogSection.get(TransformationWizardConstants.FILEDIALOG_SELECTION_KEY));
+ } else {
+ String homeFolder = System.getProperty("user.home"); //$NON-NLS-1$
+ dialog.setFilterPath(homeFolder);
+ }
+
+ // Opens the selection window and stores the selected files
+ systemDialogFiles = dialog.open();
+ if (systemDialogFiles != null) {
+ // stores the last folder/directory visited
+ dialogData.dialogSection.put(TransformationWizardConstants.FILEDIALOG_SELECTION_KEY, systemDialogFiles);
+ String[] names = dialog.getFileNames();
+ // Empty the list to avoid remembering old selections
+ systemPaths.clear();
+ for (int i = 0, n = names.length; i < n; i++) {
+ StringBuffer buf = new StringBuffer(dialog.getFilterPath());
+ if (buf.charAt(buf.length() - 1) != File.separatorChar) {
+ buf.append(File.separatorChar);
+ }
+ buf.append(names[i]);
+ systemPaths.add(buf.toString());
+ }
+ // clear the list to accept the new input
+ dialogData.getSystemSelectedFiles().clear();
+ dialogData.setSystemSelectedFiles(systemPaths);
+ }
+ }
+
+ Collection<Object> systemSelection = dialogData.getSystemSelectedFiles();
+ getProjects(systemSelection);
+ if (!systemSelection.isEmpty()) {
+ // The selected files are inside a project
+ if (!foundProjects.isEmpty()) {
+ for (Object object : foundProjects) {
+ if (isWorkspaceObject(object)) {
+ revealSelectedFiles(systemSelection);
+ }
+ // Creates the project before revealing any imported files
+ else if (importProjects(foundProjects)) {
+ revealSelectedFiles(systemSelection);
+ }
+ }
+ }
+ // We need to create a project in order to house the selected files
+ else if (systemDialogFiles != null) {
+ try {
+ List<String> srcFolders = new ArrayList<String>();
+ srcFolders.add(TransformationWizardConstants.SRC_FOLDER);
+ CreateProject placeHolder = new CreateProject(dialogData.getSystemSelectedFiles());
+ IProject newProject = placeHolder.getCreatedProject();
+ Collection<Object> revealList = new ArrayList<Object>();
+ // This case can happen by pressing the cancel button and therefore interrupting the creation of the project
+ if (newProject != null) {
+ for (IResource resource : Arrays.asList(newProject.getFolder(TransformationWizardConstants.RSC_FOLDER).members())) {
+ if (resource instanceof IFile) {
+ revealList.add((IFile) resource);
+ }
+ }
+ revealSelectedFiles(revealList);
+ }
+ } catch (Exception e) {
+ Activator.log.error(e);
+ }
+ }
+ }
+
+ }
+
+ /**
+ *
+ * Verify if the provided object is or is not inside the workspace
+ *
+ * @param object
+ * The object
+ * @return
+ * True or False
+ */
+ protected boolean isWorkspaceObject(Object object) {
+ if (object instanceof File) {
+ File file = (File) object;
+ IFile ifile = FileUtil.getIFile(file.getAbsolutePath());
+ // Assumes that any files outside the workbench are not IFiles and therefore wont be find, i.e. are null
+ if (ifile != null) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ /**
+ *
+ * Handles the creation of the new workspace projects in case of a selection outside of an existing project or workspace
+ *
+ * @param foundProjects
+ * The projects previously found
+ * @return
+ * The success of the creation
+ */
+ protected boolean importProjects(Collection<Object> foundProjects) {
+ Collection<Object> importedProjects = new LinkedList<Object>();
+ boolean importStatus = false;
+ for (Object object : foundProjects) {
+ if (object instanceof File) {
+ File file = (File) object;
+ Path filePath = new Path(file.getAbsolutePath());
+ try {
+ IProjectDescription description = ResourcesPlugin.getWorkspace().loadProjectDescription(filePath);
+ IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(description.getName());
+ importedProjects.add(project);
+ project.create(description, null);
+ project.open(null);
+ importStatus = true;
+ } catch (CoreException e) {
+ Activator.log.error(e);
+ }
+ }
+ }
+
+ dialogData.setImportedProjects(importedProjects);
+ return importStatus;
+ }
+
+ @Override
+ public void dispose() {
+ if (selectionButtonListener != null) {
+ selectAllButton.removeSelectionListener(selectionButtonListener);
+ deselectAllButton.removeSelectionListener(selectionButtonListener);
+ }
+ if (systemSelectionListener != null) {
+ systemSelectionButton.removeSelectionListener(systemSelectionListener);
+ }
+
+ super.dispose();
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/ImportConfigComposite.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/ImportConfigComposite.java
new file mode 100644
index 0000000..f984b7c
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/ImportConfigComposite.java
@@ -0,0 +1,196 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.wizard.pages;
+
+import java.io.File;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.LinkedList;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.jface.viewers.ArrayContentProvider;
+import org.eclipse.jface.viewers.CheckboxTableViewer;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.papyrus.infra.properties.ui.runtime.DisplayEngine;
+import org.eclipse.papyrus.infra.properties.ui.util.PropertiesDisplayHelper;
+import org.eclipse.papyrus.infra.widgets.util.FileUtil;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.messages.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ *
+ * Generic and reusable composite used to display the previously selected elements and the migration options
+ *
+ * @author Quentin Le Menez
+ *
+ */
+public abstract class ImportConfigComposite extends Composite {
+
+ protected Config config;
+
+ protected Collection<Object> transformationFiles;
+
+ protected CheckboxTableViewer listViewer;
+
+ protected ISelectionChangedListener listListener;
+
+ protected DisplayEngine displayEngine;
+
+ protected Collection<Object> uncheckedFiles;
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param parent
+ * The parent composite
+ * @param style
+ * The swt style used for this ConfigurationComposite
+ * @param config
+ * The configuration used to display the transformation options
+ */
+ public ImportConfigComposite(Composite parent, int style, Config config) {
+ super(parent, style);
+ this.setLayout(new GridLayout(1, false));
+ this.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ this.config = config;
+
+ Composite filesComposite = new Composite(this, SWT.BORDER);
+ filesComposite.setLayout(new FillLayout());
+ filesComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ Composite configComposite = new Composite(this, SWT.BORDER);
+ configComposite.setLayout(new FillLayout());
+ configComposite.setLayoutData(new GridData(SWT.FILL, SWT.BEGINNING, true, false));
+
+ createFilesComposite(filesComposite);
+
+ createParamComposite(configComposite);
+ }
+
+
+ /**
+ *
+ * Fills the selection area with all the files selected previously
+ *
+ * @param parent
+ * The parent composite
+ */
+ protected void createFilesComposite(Composite parent) {
+ Composite listComposite = new Composite(parent, SWT.NONE);
+ GridLayout gridLayout = new GridLayout(2, false);
+ listComposite.setLayout(gridLayout);
+
+ listViewer = CheckboxTableViewer.newCheckList(listComposite, SWT.MULTI | SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
+ GridData viewerGrid = new GridData(SWT.FILL, SWT.FILL, true, true);
+ listViewer.getTable().setLayoutData(viewerGrid);
+
+ listViewer.setLabelProvider(new LabelProvider() {
+ @Override
+ public String getText(Object element) {
+ if (element instanceof IFile) {
+ return FileUtil.getPath((IFile) element, true);
+ } else if (element instanceof File) {
+ return ((File) element).getAbsolutePath();
+ } else {
+ return Messages.WrongFileType;
+ }
+ }
+ });
+
+ listViewer.setContentProvider(new ArrayContentProvider());
+
+ listListener = new ISelectionChangedListener() {
+ @Override
+ public void selectionChanged(SelectionChangedEvent event) {
+ fireSelectionEvent(event);
+ }
+ };
+
+ listViewer.addSelectionChangedListener(listListener);
+
+ setTransformationFiles();
+
+ createSelectionButtons(listComposite);
+
+ }
+
+
+ /**
+ *
+ * Used to update the display from a changed selection in the ConfigPage
+ *
+ * @param selectedFiles
+ * The new list of selected files
+ */
+ abstract void setViewerInput(Collection<Object> selectedFiles);
+
+ /**
+ *
+ * Abstract method to be implemented by the child in order to create the useful buttons to manipulate the tableViewer's elements
+ *
+ * @param parent
+ * The parent composite in which the new buttons will be created
+ */
+ abstract void createSelectionButtons(Composite parent);
+
+ /**
+ *
+ * Abstract method to be implemented by the child in order to handle the transformation options
+ *
+ * @param event
+ * The event linked to the configuration's selection buttons
+ */
+ abstract void fireSelectionEvent(SelectionChangedEvent event);
+
+
+ /**
+ *
+ * Updates the list of files to be transformed
+ *
+ */
+ public void setTransformationFiles() {
+ transformationFiles = new LinkedList<Object>(Arrays.asList(listViewer.getCheckedElements()));
+ }
+
+
+ /**
+ *
+ * Fills the composite with the configuration parameters
+ *
+ * @param parent
+ * The parent composite
+ */
+ public void createParamComposite(Composite parent) {
+ displayEngine = PropertiesDisplayHelper.display(config, parent);
+ }
+
+
+ @Override
+ public void dispose() {
+ if (displayEngine != null) {
+ displayEngine.dispose();
+ }
+ if (listListener != null) {
+ listViewer.removeSelectionChangedListener(listListener);
+ }
+ super.dispose();
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/ImportTreeComposite.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/ImportTreeComposite.java
new file mode 100644
index 0000000..9ab4ac1
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/ImportTreeComposite.java
@@ -0,0 +1,540 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.wizard.pages;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.LinkedHashMap;
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IFolder;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.jface.viewers.ILabelProvider;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.StructuredSelection;
+import org.eclipse.jface.viewers.TreeViewer;
+import org.eclipse.jface.viewers.ViewerFilter;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.services.labelprovider.service.LabelProviderService;
+import org.eclipse.papyrus.infra.services.labelprovider.service.impl.LabelProviderServiceImpl;
+import org.eclipse.papyrus.infra.widgets.providers.IGraphicalContentProvider;
+import org.eclipse.papyrus.infra.widgets.providers.PatternViewerFilter;
+import org.eclipse.papyrus.infra.widgets.providers.WorkspaceContentProvider;
+import org.eclipse.papyrus.interoperability.rsa.Activator;
+import org.eclipse.papyrus.interoperability.rsa.messages.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.FillLayout;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.dialogs.PatternFilter;
+
+
+/**
+ *
+ * Generic and reusable composite used to display the workspace and select the wanted elements
+ *
+ * @author Quentin Le Menez
+ *
+ */
+public abstract class ImportTreeComposite extends Composite {
+
+ protected TreeViewer treeViewer;
+
+ protected LabelProviderService labelProviderService;
+
+ protected ILabelProvider treeViewerlabelProvider;
+
+ protected WorkspaceContentProvider treeViewercontentProvider;
+
+ protected ISelectionChangedListener treeViewerListener;
+
+ protected final List<String> filterNames;
+
+ protected final List<String> filterExtensions;
+
+ protected Collection<Object> selectedFiles;
+
+ protected Collection<String> systemPaths;
+
+ protected FillLayout layout;
+
+ protected Composite treeViewerComposite;
+
+ protected Composite selectionButtonsComposite;
+
+ protected Collection<Object> foundProjects;
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param parent
+ * The parent composite
+ * @param style
+ * The swt style used for this ConfigurationComposite
+ * @param extensions
+ * The default extensions used to filter the displayed results
+ * @param extensionsNames
+ * The displayed names of those filters
+ */
+ public ImportTreeComposite(Composite parent, int style, String[] extensions, String[] extensionsNames) {
+ super(parent, style);
+ this.setLayout(new GridLayout(2, false));
+ this.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+
+ selectedFiles = new LinkedList<Object>();
+ filterNames = new LinkedList<String>();
+ filterExtensions = new LinkedList<String>();
+ systemPaths = new LinkedList<String>();
+ foundProjects = new LinkedList<Object>();
+
+ createTreeViewerComposite(this, extensions, extensionsNames);
+
+ createSelectionButtons(this);
+ }
+
+
+ /**
+ *
+ * Creates the visual representation of the workspace
+ *
+ * @param parent
+ * The parent Composite
+ * @param extensions
+ * The default extensions used to filter the displayed results
+ * @param extensionsNames
+ * The displayed names of those filters
+ */
+ private void createTreeViewerComposite(Composite parent, String[] extensions, String[] extensionsNames) {
+ treeViewerComposite = new Composite(parent, SWT.NONE);
+ treeViewerComposite.setLayout(new GridLayout(1, true));
+ treeViewerComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ Composite beforeTreeComposite = new Composite(treeViewerComposite, SWT.NONE);
+
+ Composite treeComposite = new Composite(treeViewerComposite, SWT.NONE);
+ treeComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true));
+ layout = new FillLayout();
+ layout.marginHeight = 0;
+ layout.marginWidth = 0;
+ treeComposite.setLayout(layout);
+
+ treeViewer = new TreeViewer(treeComposite, SWT.MULTI | SWT.H_SCROLL | SWT.V_SCROLL | SWT.BORDER);
+ treeViewer.setFilters(new ViewerFilter[] { new PatternFilter() });
+
+ labelProviderService = new LabelProviderServiceImpl();
+ try {
+ labelProviderService.startService();
+ } catch (ServiceException ex) {
+ Activator.log.error(ex);
+ }
+
+ treeViewerlabelProvider = labelProviderService.getLabelProvider();
+ treeViewercontentProvider = new WorkspaceContentProvider();
+ setFilters(extensions, extensionsNames);
+
+ treeViewercontentProvider.setExtensionFilters(new LinkedHashMap<String, String>());
+ for (int i = 0; i < Math.min(filterNames.size(), filterExtensions.size()); i++) {
+ treeViewercontentProvider.addExtensionFilter(filterExtensions.get(i), filterNames.get(i));
+ }
+
+ treeViewer.setContentProvider(treeViewercontentProvider);
+ treeViewer.setLabelProvider(treeViewerlabelProvider);
+
+ defaultViewerInput();
+
+ treeViewerListener = new ISelectionChangedListener() {
+
+ @Override
+ public void selectionChanged(SelectionChangedEvent event) {
+ fireTreeSelectionEvent(event);
+ }
+ };
+
+ treeViewer.addSelectionChangedListener(treeViewerListener);
+
+ // This is used to display both of the filters (before and after the treeViewer)
+ if (treeViewercontentProvider instanceof IGraphicalContentProvider) {
+ IGraphicalContentProvider graphicalContentProvider = treeViewercontentProvider;
+
+ beforeTreeComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
+ layout = new FillLayout();
+ layout.marginHeight = 0;
+ layout.marginWidth = 0;
+ beforeTreeComposite.setLayout(layout);
+ graphicalContentProvider.createBefore(beforeTreeComposite);
+ beforeTreeComposite.moveAbove(treeViewer.getTree());
+
+ Composite afterTreeComposite = new Composite(treeViewerComposite, SWT.NONE);
+ layout = new FillLayout();
+ layout.marginHeight = 0;
+ layout.marginWidth = 0;
+ afterTreeComposite.setLayout(layout);
+ afterTreeComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
+ graphicalContentProvider.createAfter(afterTreeComposite);
+ }
+
+ }
+
+ /**
+ *
+ * Sets the filters for the treeViewer, matching the names with the extensions
+ *
+ * @param filterExtensions
+ * The extensions
+ * @param filterNames
+ * The associated names
+ */
+ protected void setFilters(String[] filterExtensions, String[] filterNames) {
+ if (filterExtensions.length != filterNames.length) {
+ // This is a simple warning. Only valid filters will be retained.
+ Activator.log.warn(Messages.MultipleStringFileEditor_2);
+ }
+
+ setFilterNames(getFilterLabels(filterNames, filterExtensions));
+ setFilterExtensions(filterExtensions);
+ }
+
+ /**
+ *
+ * Builds the filter labels to be displayed
+ *
+ * @param filterNames
+ * @param filterExtensions
+ * @return
+ * The array containing the built labels
+ */
+ protected String[] getFilterLabels(String[] filterNames, String[] filterExtensions) {
+ int size = Math.min(filterNames.length, filterExtensions.length);
+ String[] filters = new String[size];
+ for (int i = 0; i < size; i++) {
+ filters[i] = filterNames[i] + " (" + filterExtensions[i] + ")"; //$NON-NLS-1$ //$NON-NLS-2$
+ }
+ return filters;
+ }
+
+ /**
+ *
+ * Fills the local array to be manipulated
+ *
+ * @param filterExtensions
+ * The input extensions
+ */
+ protected void setFilterExtensions(String[] filterExtensions) {
+ this.filterExtensions.clear();
+ this.filterExtensions.addAll(Arrays.asList(filterExtensions));
+ }
+
+ /**
+ *
+ * Fills the local array to be manipulated
+ *
+ * @param filterNames
+ * The input names
+ */
+ protected void setFilterNames(String[] filterNames) {
+ this.filterNames.clear();
+ this.filterNames.addAll(Arrays.asList(filterNames));
+ }
+
+
+ /**
+ *
+ * This method allows to set the default input of the treeViewer
+ *
+ */
+ protected void defaultViewerInput() {
+ treeViewer.setInput(File.listRoots());
+ // Gets the selection in the workspace at the time of the launch
+ ISelection workbenchSelection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService().getSelection();
+ // Sets the first selection of the treeviewer from the selection in the workspace
+ revealSelection(workbenchSelection);
+ treeViewer.setSelection(workbenchSelection, true);
+ }
+
+
+ /**
+ *
+ * Abstract method to be implemented by the child in order to create the useful buttons to manipulate the tree's elements
+ *
+ * @param parent
+ * The parent composite in which the new buttons will be created
+ */
+ abstract void createSelectionButtons(Composite parent);
+
+ /**
+ *
+ * Abstract method to be implemented by the child in order to handle the treeViewer element selection
+ *
+ * @param event
+ * The event linked to the selections inside the treeViewer
+ */
+ abstract void fireTreeSelectionEvent(SelectionChangedEvent event);
+
+
+ /**
+ *
+ * This method reveals the elements selected outside of the workspace or from the workspace selection at launch by expanding the tree
+ *
+ * @param importedFiles
+ * The list of selected files
+ */
+ protected void revealSelectedFiles(Collection<Object> importedFiles) {
+ // this method calls to expand any folders or projects containg the selected files in order to show the workspace selection
+ Collection<IFile> ifiles = new ArrayList<IFile>();
+ // Collection<IProject> iprojects = new ArrayList<IProject>();
+ // Collection<IFolder> ifolders = new ArrayList<IFolder>();
+ if (importedFiles != null && !importedFiles.isEmpty()) {
+ for (Object object : importedFiles) {
+ treeViewer.refresh();
+ if (object instanceof File) {
+ File file = (File) object;
+ IFile ifile = ResourcesPlugin.getWorkspace().getRoot().getFileForLocation(new Path(file.getAbsolutePath()));
+ if (ifile != null) {
+ ifiles.add(ifile);
+ revealTreeElement(ifile);
+ }
+ }
+ if (object instanceof IFile) {
+ IFile ifile = (IFile) object;
+ ifiles.add(ifile);
+ revealTreeElement(ifile);
+ }
+ // if (object instanceof IFolder) {
+ // IFolder ifolder = (IFolder) object;
+ // ifolders.add(ifolder);
+ // revealTreeElement(ifolder);
+ // }
+ // if (object instanceof IProject) {
+ // IProject iproject = (IProject) object;
+ // iprojects.add(iproject);
+ // // As a project is a root element, no need to expand it
+ // }
+ }
+ }
+
+ treeViewer.setSelection(new StructuredSelection(ifiles.toArray()), true);
+ // treeViewer.setSelection(new StructuredSelection(ifolders.toArray()), true);
+ // treeViewer.setSelection(new StructuredSelection(iprojects.toArray()), true);
+ }
+
+ /**
+ *
+ * Handles the workspace selection
+ *
+ * @param iselection
+ * The selection
+ */
+ protected void revealSelection(ISelection iselection) {
+ if (iselection instanceof IStructuredSelection) {
+ IStructuredSelection sselection = (IStructuredSelection) iselection;
+ revealSelectedFiles(Arrays.asList(sselection.toArray()));
+ }
+ }
+
+ /**
+ *
+ * Reveal each elements from the selected elements list
+ *
+ * @param object
+ * The selected object
+ */
+ protected void revealTreeElement(Object object) {
+ // verify the possibility of getting the file's parent and that the root directory is not already selected
+ if (object instanceof IFile && !(object instanceof IProject)) {
+ IFile ifile = (IFile) object;
+ treeViewer.setExpandedState(ifile.getParent(), true);
+ if (!(ifile.getParent() instanceof IProject)) {
+ revealTreeElement(ifile.getParent());
+ }
+ }
+ if (object instanceof IFolder && !(object instanceof IProject)) {
+ IFolder ifolder = (IFolder) object;
+ treeViewer.setExpandedState(ifolder.getParent(), true);
+ if (!(ifolder.getParent() instanceof IProject)) {
+ revealTreeElement(ifolder.getParent());
+ }
+ }
+ }
+
+ /**
+ *
+ * This method is used to get the projects containing the selected objects
+ *
+ * @param systemSelection
+ * The selection outside of the workspace
+ * @return
+ * The list of projects found
+ */
+ protected Collection<Object> getProjects(Collection<Object> systemSelection) {
+ if (systemSelection != null && !systemSelection.isEmpty()) {
+ for (Object object : systemSelection) {
+ if (object instanceof File) {
+ File file = (File) object;
+ getProject(file);
+ }
+ }
+ }
+ return foundProjects;
+ }
+
+ /**
+ *
+ * This method is used to get the projects containing the file
+ *
+ * @param file
+ * The selected file
+ */
+ protected void getProject(File file) {
+ File parentFile = file.getParentFile();
+ if (parentFile == null) {
+ // No containing project has been found
+ return;
+ }
+
+ Collection<File> parentChildren = Arrays.asList(parentFile.listFiles());
+ for (File nestedFile : parentChildren) {
+ // String fileExtension = Files.getFileExtension(nestedFile.getAbsolutePath());
+ String fileExtension = getFileExtensions(nestedFile);
+ if (fileExtension.equals(".project") && !foundProjects.contains(nestedFile)) { // $NON-NLS-1$
+ // A containing project has been found
+ foundProjects.add(nestedFile);
+ return;
+ }
+ }
+
+ getProject(parentFile);
+ }
+
+ /**
+ *
+ * This method gathers the file extensions in order to filter them
+ *
+ * @param file
+ * The file
+ * @return
+ * The file's extension
+ */
+ protected String getFileExtensions(File file) {
+ String fileName = file.getName();
+ if (fileName.lastIndexOf(".") != -1 /* && fileName.lastIndexOf(".") != 0 */) { // $NON-NLS-1$
+ return fileName.substring(fileName.lastIndexOf(".")); // $NON-NLS-1$
+ } else {
+ return "";
+ }
+ }
+
+ /**
+ *
+ * Constructs the list of the treeViewer's selected files
+ *
+ * @param elements
+ */
+ public void setSelectedFiles(Object[] elements) {
+ // get the viewer selection to obtain the filtered files
+ getNestedFiles(elements);
+ }
+
+ /**
+ *
+ * getter used to access the selectedFiles list
+ *
+ * @return
+ * the list of selected files
+ */
+ public Collection<Object> getSelectedFiles() {
+ return selectedFiles;
+ }
+
+ /**
+ *
+ * Gets all the files from the user's selection in the viewer and updates the local selection list
+ *
+ * @param nestedElements
+ * The array containing the selected elements, be they files or folders
+ */
+ protected void getNestedFiles(Object[] nestedElements) {
+ Collection<Object> projectList = new LinkedList<Object>();
+ Collection<Object> folderList = new LinkedList<Object>();
+ List<PatternViewerFilter> currentFilters = new ArrayList<PatternViewerFilter>();
+ for (ViewerFilter filter : treeViewer.getFilters()) {
+ if (filter instanceof PatternViewerFilter) {
+ currentFilters.add((PatternViewerFilter) filter);
+ }
+ }
+
+ for (Object element : nestedElements) {
+ if (element instanceof IProject) {
+ projectList.add(element);
+ }
+ if (element instanceof IFolder) {
+ folderList.add(element);
+ }
+ if (element instanceof IFile) {
+ Boolean isVisible = false;
+ IFile selectedFile = (IFile) element;
+ String fileExtension = "*." + selectedFile.getFileExtension(); //$NON-NLS-1$
+ if (filterExtensions.contains(fileExtension) && !selectedFiles.contains(selectedFile)) {
+ isVisible = true;
+ }
+ for (int index = 0; index < currentFilters.size() && isVisible; index++) {
+ isVisible = currentFilters.get(index).isVisible(treeViewer, selectedFile.getParent(), selectedFile);
+ }
+ if (isVisible) {
+ selectedFiles.add(selectedFile);
+ }
+ }
+ }
+
+ if (projectList.size() > 0) {
+ for (Object element : projectList) {
+ IProject selectedProject = (IProject) element;
+ try {
+ getNestedFiles(selectedProject.members());
+ } catch (CoreException e) {
+ Activator.log.error(e);
+ }
+ }
+ }
+
+ if (folderList.size() > 0) {
+ for (Object element : folderList) {
+ IFolder selectedFolder = (IFolder) element;
+ try {
+ getNestedFiles(selectedFolder.members());
+ } catch (CoreException e) {
+ Activator.log.error(e);
+ }
+ }
+ }
+ }
+
+ @Override
+ public void dispose() {
+ if (treeViewerListener != null) {
+ treeViewer.removeSelectionChangedListener(treeViewerListener);
+ }
+ super.dispose();
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/TransformationConfigPage.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/TransformationConfigPage.java
new file mode 100644
index 0000000..b7457a9
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/TransformationConfigPage.java
@@ -0,0 +1,73 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.wizard.pages;
+
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.papyrus.interoperability.rsa.messages.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ *
+ * Page displaying the selected elements and the migration's configuration options
+ *
+ * @author Quentin Le Menez
+ *
+ */
+public class TransformationConfigPage extends WizardPage {
+
+ protected DialogDataConfigComposite dialogDataConfigComposite;
+
+ protected DialogData dialogData;
+
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param dialogData
+ * The instance used to get the previously selected files from both the settings file and the previous page selection,
+ * as well as the configuration used to display the transformation options
+ */
+ public TransformationConfigPage(DialogData dialogData) {
+ super(Messages.TransformationConfigPage_Name);
+ setTitle(Messages.TransformationConfigPage_Title);
+ setDescription(Messages.TransformationConfigPage_Description);
+ // String iconPath = "icons/import_wiz_75x66.png"; //$NON-NLS-1$
+ // ImageDescriptor imgDescriptior = Activator.getDefault().getImageDescriptor(iconPath);
+ // setImageDescriptor(imgDescriptior);
+
+ this.dialogData = dialogData;
+ }
+
+ @Override
+ public void createControl(Composite parent) {
+ initializeDialogUnits(parent);
+ Composite pageComposite = new Composite(parent, SWT.NONE);
+ pageComposite.setLayout(new GridLayout());
+
+ dialogDataConfigComposite = new DialogDataConfigComposite(pageComposite, SWT.NONE, dialogData);
+
+ setControl(pageComposite);
+ }
+
+ /**
+ *
+ * Used to update the input of the nested composite's viewer
+ *
+ */
+ public void resetViewerInput() {
+ dialogDataConfigComposite.setViewerInput(dialogData.getAllSelectedFiles());
+ }
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/TransformationSelectionPage.java b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/TransformationSelectionPage.java
new file mode 100644
index 0000000..2647f7d
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/src/org/eclipse/papyrus/interoperability/rsa/wizard/pages/TransformationSelectionPage.java
@@ -0,0 +1,59 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Quentin Le Menez (CEA LIST) quentin.lemenez@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.wizard.pages;
+
+import org.eclipse.jface.wizard.WizardPage;
+import org.eclipse.papyrus.interoperability.rsa.messages.Messages;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Composite;
+
+/**
+ *
+ * Page displaying the workspace and its elements
+ *
+ * @author Quentin Le Menez
+ *
+ */
+public class TransformationSelectionPage extends WizardPage {
+
+ protected DialogData dialogData;
+
+ /**
+ *
+ * Constructor.
+ *
+ * @param dialogData
+ * The instance used to get the selection from the workspace and the filters
+ */
+ public TransformationSelectionPage(DialogData dialogData) {
+ super(Messages.TransformationSelectionPage_Name);
+ setTitle(Messages.TransformationSelectionPage_Title);
+ setDescription(Messages.TransformationSelectionPage_Description);
+ // String iconPath = "icons/import_wiz_75x66.png"; //$NON-NLS-1$
+ // ImageDescriptor imgDescriptior = Activator.getDefault().getImageDescriptor(iconPath);
+ // setImageDescriptor(imgDescriptior);
+
+ this.dialogData = dialogData;
+ }
+
+ @Override
+ public void createControl(Composite parent) {
+ initializeDialogUnits(parent);
+ Composite pageComposite = new Composite(parent, SWT.NONE);
+ pageComposite.setLayout(new GridLayout());
+
+ new DialogDataTreeComposite(pageComposite, SWT.NONE, dialogData);
+
+ setControl(pageComposite);
+ }
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAActivityDiagram.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAActivityDiagram.qvto
new file mode 100644
index 0000000..e48c87f
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAActivityDiagram.qvto
@@ -0,0 +1,781 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 465656
+ *****************************************************************************/
+import RSAToPapyrus;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSAActivityDiagram(inout semantics : uml, inout graphics : notation, out di : sash, in params : config);
+
+main() {
+ semantics.rootObjects()[uml::Element]->map toOwnedDiagrams();
+}
+
+query View::getDiagramType() : String{
+ return 'PapyrusUMLActivityDiagram';
+}
+
+mapping notation::Diagram::generateDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ self.type = 'Activity'
+}{
+ end {
+ graphics.objectsOfType(Shape)->any(type = 'Activity_Shape').map fixFramePosition();
+ graphics.objectsOfType(Shape)->any(type = 'Activity_Shape').map createHeaders();
+
+ graphics.objectsOfType(Shape)->select(type='Comment_Shape').map addCommentDecoration();
+ graphics.objectsOfType(Shape)->select(type = 'Constraint_Shape').map addConstraintDecoration();
+
+ graphics.objectsOfType(Shape)->select(type = 'ActivityPartition_Shape').map fixPartitionsLayout();
+
+ graphics.objectsOfType(Shape).map fixDefaultSize();
+ }
+}
+
+/**
+* Fix the default size for Join, Fork, Merge and Decision nodes
+*/
+mapping inout Shape::fixDefaultSize() disjuncts Shape::fixJoinForkSize, Shape::fixMergeDecisionSize {
+ //Disjuncts
+}
+
+mapping inout Shape::fixJoinForkSize() when {
+ self.type = 'JoinNode_Shape' or self.type = 'ForkNode_Shape'
+} {
+ var layout : Bounds := self.layoutConstraint.oclAsType(Bounds);
+
+ if layout.width = -1 then layout.width := 101 endif;
+ if layout.height = -1 then layout.height := 11 endif;
+}
+
+mapping inout Shape::fixMergeDecisionSize() when {
+ self.type = 'MergeNode_Shape' or self.type = 'DecisionNode_Shape'
+} {
+ var layout : Bounds := self.layoutConstraint.oclAsType(Bounds);
+
+ if layout.width = -1 then layout.width := 50 endif;
+ if layout.height = -1 then layout.height := 50 endif;
+}
+
+property partitionX : Integer = 20;
+
+mapping inout Node::fixPartitionsLayout() {
+ var width: Integer := 200; //Approximation. In RSA, the layout can be computed automatically based on the Partition's Contents. In Papyrus, this must be specified explicitely
+ var marginHeight := 10; //Note: Papyrus currently has an additional margin in the bottom of Activities, which is ~60px. As a result, marginHeight rather corresponds to "marginTop" (Bug 459888)
+
+ var bounds : Bounds := self.layoutConstraint.oclAsType(Bounds);
+
+ var parentCompartment : DecorationNode := self.oclAsType(EObject).eContainer().oclAsType(DecorationNode);
+ var parent : Shape := parentCompartment.oclAsType(EObject).eContainer().oclAsType(Shape);
+ var parentBounds := parent.layoutConstraint.oclAsType(Bounds);
+ var parentHeight := parentBounds.height;
+
+ var previousPosition : Integer := parentCompartment.children->select(type = 'ActivityPartition_Shape')->indexOf(self) - 1;
+ var previousPartition : Node := parentCompartment.children->select(type = 'ActivityPartition_Shape')->at(previousPosition);
+
+ if previousPartition.oclIsUndefined() then { /* First partition */
+ bounds.x := partitionX;
+ } else {
+ previousPartition.map fixPartitionsLayout(); /* Ensure that partition n-1 is already fixed */
+ var previousBounds := previousPartition.layoutConstraint.oclAsType(Bounds);
+ bounds.x := previousBounds.x + previousBounds.width - 1; //-1 to force Partition border overlap
+ } endif;
+
+ bounds.width := width.max(bounds.width);
+ bounds.y := marginHeight;
+ bounds.height := (parentHeight - marginHeight * 2).max(bounds.height).max(400);
+}
+
+mapping inout Shape::addCommentDecoration() when {
+ self.type = 'Comment_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Comment_BodyLabel';
+ }
+
+}
+
+mapping inout Shape::addConstraintDecoration() when {
+ self.type = 'Constraint_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Constraint_BodyLabel'; //Constraint specification
+ }
+
+}
+
+
+/* Add a margin on the top and left */
+mapping inout Shape::fixFramePosition() {
+ var bounds := self.layoutConstraint.oclAsType(Bounds);
+ var margin := 10;
+ if bounds.x < margin then bounds.x := margin endif;
+ if bounds.y < margin then bounds.y := margin endif;
+}
+
+mapping inout Shape::createHeaders() : param: DecorationNode, pre: DecorationNode, post: DecorationNode {
+ self.children += param;
+ self.children += pre;
+ self.children += post;
+
+ param.type := 'Activity_ParameterCompartment';
+ pre.type := 'Activity_PreconditionCompartment';
+ post.type := 'Activity_PostconditionCompartment';
+}
+
+mapping Node::toNode() : Node disjuncts
+ UMLShape::toPapyrusShape,
+ UMLShapeCompartment::toStructureCompartment,
+ BasicSemanticCompartment::toListCompartment,
+ BasicDecorationNode::toConnectorLabel,
+ BasicDecorationNode::toLabel
+ //TODO: Disjunct nodes mapping
+;
+
+mapping Edge::toEdge() : Edge disjuncts
+ UMLConnector::toCommentLink,
+ UMLConnector::toConstraintLink,
+ UMLConnector::toPapyrusConnector
+ //TODO: Disjunct edges mapping
+;
+
+mapping UMLShapeCompartment::toStructureCompartment() : DecorationNode inherits UMLShapeCompartment::toAbstractStructureCompartment when {
+ self.type = 'StructureCompartment' or self.type = 'PackageContents' or self.type = 'ActivityCompartment' or self.type='PartitionCompartment' or self.type='StructuredActivityNodeCompartment'
+ and not self.getType().oclIsUndefined();
+}{
+
+}
+
+
+/***** Nodes **********/
+
+mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when {
+ self.type = 'Activity Frame' or self.type = 'Partition' or (
+ self.type = '' and not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(FlowFinalNode)or
+ self.element.oclIsTypeOf(ActivityPartition)or
+ self.element.oclIsTypeOf(IntervalConstraint)or
+ self.element.oclIsTypeOf(ActionInputPin)or
+ self.element.oclIsTypeOf(BroadcastSignalAction)or
+ self.element.oclIsTypeOf(ActionInputPin)or
+ self.element.oclIsTypeOf(ValuePin)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(ValuePin)or
+ self.element.oclIsTypeOf(SequenceNode)or
+ self.element.oclIsTypeOf(ActionInputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(ReadSelfAction)or
+ self.element.oclIsTypeOf(ActivityFinalNode)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(SendSignalAction)or
+ self.element.oclIsTypeOf(InitialNode)or
+ self.element.oclIsTypeOf(AddStructuralFeatureValueAction)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(DurationConstraint)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(LoopNode)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(ForkNode)or
+ self.element.oclIsTypeOf(ExpansionNode)or
+ self.element.oclIsTypeOf(ActionInputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(CallOperationAction)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(IntervalConstraint)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(AddVariableValueAction)or
+ self.element.oclIsTypeOf(ExpansionNode)or
+ self.element.oclIsTypeOf(ValuePin)or
+ self.element.oclIsTypeOf(Parameter)or
+ self.element.oclIsTypeOf(ReadVariableAction)or
+ self.element.oclIsTypeOf(OpaqueAction)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(ValuePin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(InterruptibleActivityRegion)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(JoinNode)or
+ self.element.oclIsTypeOf(StructuredActivityNode)or
+ self.element.oclIsTypeOf(ConditionalNode)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(ActionInputPin)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(TimeConstraint)or
+ self.element.oclIsTypeOf(DecisionNode)or
+ self.element.oclIsTypeOf(ActivityParameterNode)or
+ self.element.oclIsTypeOf(ActionInputPin)or
+ self.element.oclIsTypeOf(ActionInputPin)or
+ self.element.oclIsTypeOf(CentralBufferNode)or
+ self.element.oclIsTypeOf(Comment)or
+ self.element.oclIsTypeOf(DestroyObjectAction)or
+ self.element.oclIsTypeOf(CreateObjectAction)or
+ self.element.oclIsTypeOf(ValuePin)or
+ self.element.oclIsTypeOf(ValuePin)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(DataStoreNode)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(ActionInputPin)or
+ self.element.oclIsTypeOf(CallBehaviorAction)or
+ self.element.oclIsTypeOf(ExpansionRegion)or
+ self.element.oclIsTypeOf(SendObjectAction)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(TimeConstraint)or
+ self.element.oclIsTypeOf(MergeNode)or
+ self.element.oclIsTypeOf(DurationConstraint)or
+ self.element.oclIsTypeOf(ValuePin)or
+ self.element.oclIsTypeOf(ValueSpecificationAction)or
+ self.element.oclIsTypeOf(AcceptEventAction)or
+ self.element.oclIsTypeOf(Activity)or
+ self.element.oclIsTypeOf(InputPin)or
+ self.element.oclIsTypeOf(ReadStructuralFeatureAction)or
+ self.element.oclIsTypeOf(OutputPin)or
+ self.element.oclIsTypeOf(ValuePin)
+ )
+ )
+}{
+
+}
+
+
+/****** Connector Labels ******/
+
+mapping BasicDecorationNode::toConnectorLabel() : DecorationNode inherits Node::toPapyrusConnectorLabel when {
+ not self.getType().oclIsUndefined() and (
+ self.type = 'ToMultiplicityLabel' or
+ self.type = 'ToRoleLabel' or
+ self.type = 'FromMultiplicityLabel' or
+ self.type = 'FromRoleLabel' or
+ self.type = 'NameLabel' or
+ self.type = 'KindLabel' or
+ self.type = 'ObjectNodeNameLabel'
+ )
+}{}
+
+
+/****** Compartments *******/
+
+mapping BasicDecorationNode::toLabel() : DecorationNode inherits Node::toPapyrusNode when {
+ not self.getType().oclIsUndefined() and
+ self.element.oclIsKindOf(uml::NamedElement) and
+ (self.type = 'Name' or self.type = 'PartitionName' or self.type = 'ObjectNodeNameLabel')
+}{}
+
+mapping BasicSemanticCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment') and not self.getType().oclIsUndefined()
+}{
+ result.children := self.findElement().map toContents(self);
+}
+
+mapping Element::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Activity::toContents
+;
+
+mapping Activity::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Activity::toActivityFigureParameterCompartmentContents,
+ Activity::toActivityFigurePreconditionCompartmentContents,
+ Activity::toActivityFigurePostCondtionCompartmentContents
+;
+
+mapping Activity::toActivityFigureParameterCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'Compartment';
+}{
+ init {
+ result := (self.map fillParameter(node))
+ }
+}
+
+mapping Activity::toActivityFigurePreconditionCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'Compartment';
+}{
+ init {
+ result := (self.map fillConstraint(node))
+ }
+}
+
+mapping Activity::toActivityFigurePostCondtionCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'Compartment';
+}{
+ init {
+ result := (self.map fillConstraint(node))
+ }
+}
+
+mapping uml::Activity::fillParameter(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='Compartment';
+}{
+ init {
+ result := self.ownedParameter->selectByKind(Parameter).map toParameterInActivity(node)->asSequence();
+ }
+}
+
+mapping uml::Activity::fillConstraint(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='Compartment';
+}{
+ init {
+ result := self.precondition->selectByKind(Constraint).map toConstraintInActivity(node)->asSequence();
+ }
+}
+
+mapping Parameter::toParameterInActivity(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Parameter_ParameterLabel';
+}
+
+mapping Constraint::toConstraintInActivity(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Constraint_PreconditionLabel';
+}
+
+
+
+/******* Edges ********/
+
+
+mapping UMLConnector::toPapyrusConnector() : Connector inherits Connector::toPapyrusConnector when {
+ self.type = '' and
+ not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(ObjectFlow)or
+ self.element.oclIsTypeOf(ControlFlow)or
+ self.element.oclIsTypeOf(ExceptionHandler)
+ )
+}{
+ result.styles := self.map toFontStyle();
+}
+
+mapping UMLConnector::toCommentLink() : Connector inherits Connector::toCommentLink when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Comment) or
+ self.target.element.oclIsKindOf(Comment)
+ )
+}{
+ result.type :='Comment_AnnotatedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+mapping UMLConnector::toConstraintLink() : Connector inherits Connector::toPapyrusConnector when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Constraint) or
+ self.target.element.oclIsKindOf(Constraint)
+ )
+}{
+ result.type :='Constraint_ConstrainedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+
+/****** Element Type queries ******/
+
+query View::getNodeType(element : Element) : String {
+
+ var type : String := null;
+ var parent := element.container();
+
+ //Specific cases for Output pins
+ if element.oclIsTypeOf(OutputPin) then {
+
+ type := switch {
+ case (parent.oclIsTypeOf(OpaqueAction)) 'OutputPin_OpaqueActionOutputShape';
+ case (parent.oclIsTypeOf(CreateObjectAction)) 'OutputPin_CreateObjectActionResultShape';
+ case (parent.oclIsTypeOf(ReadStructuralFeatureAction)) 'OutputPin_ReadStructuralFeatureActionResultShape';
+ case (parent.oclIsTypeOf(AcceptEventAction)) 'OutputPin_AcceptEventActionResultShape';
+ case (parent.oclIsTypeOf(ValueSpecificationAction)) 'OutputPin_ValueSpecificationActionResultShape';
+ case (parent.oclIsTypeOf(AddStructuralFeatureValueAction)) 'OutputPin_AddStructuralFeatureValueActionResultShape';
+ case (parent.oclIsTypeOf(CallOperationAction)) 'OutputPin_CallOperationActionResultShape';
+ case (parent.oclIsTypeOf(CallBehaviorAction)) 'OutputPin_CallBehaviorActionResultShape';
+ case (parent.oclIsTypeOf(ReadVariableAction)) 'OutputPin_ReadVariableActionResultShape';
+ case (parent.oclIsTypeOf(ReadSelfAction)) 'OutputPin_ReadSelfActionResultShape';
+
+ case (parent.oclIsTypeOf(LoopNode) and parent.oclAsType(LoopNode).bodyOutput->includes(element.oclAsType(OutputPin))) 'OutputPin_LoopNodeBodyOutputShape';
+ case (parent.oclIsTypeOf(LoopNode) and parent.oclAsType(LoopNode)._result->includes(element.oclAsType(OutputPin))) 'OutputPin_LoopNodeResultShape';
+ case (parent.oclIsTypeOf(LoopNode) and parent.oclAsType(LoopNode).loopVariable->includes(element.oclAsType(OutputPin))) 'OutputPin_LoopNodeVariableShape';
+
+ else self.fail();
+ };
+ } endif;
+
+ //Specific cases for Input pins
+ if element.oclIsTypeOf(InputPin) then {
+
+ type := switch {
+ case (parent.oclIsTypeOf(LoopNode)) 'InputPin_LoopNodeVariableInputShape';
+ case (parent.oclIsTypeOf(ReadStructuralFeatureAction)) 'InputPin_ReadStructuralFeatureActionObjectShape';
+ case (parent.oclIsTypeOf(BroadcastSignalAction)) 'InputPin_BroadcastSignalActionArgumentShape';
+ case (parent.oclIsTypeOf(DestroyObjectAction)) 'InputPin_DestroyObjectActionTargetShape';
+ case (parent.oclIsTypeOf(CallBehaviorAction)) 'InputPin_CallBehaviorActionArgumentShape';
+ case (parent.oclIsTypeOf(OpaqueAction)) 'InputPin_OpaqueActionInputShape';
+
+ case (parent.oclIsTypeOf(SendSignalAction) and parent.oclAsType(SendSignalAction).target->includes(element.oclAsType(InputPin))) 'InputPin_SendSignalActionTargetShape';
+ case (parent.oclIsTypeOf(SendSignalAction)) 'InputPin_SendSignalActionArgumentShape';
+
+ case (parent.oclIsTypeOf(AddStructuralFeatureValueAction) and parent.oclAsType(AddStructuralFeatureValueAction).value->includes(element.oclAsType(InputPin))) 'InputPin_AddStructuralFeatureValueActionValueShape';
+ case (parent.oclIsTypeOf(AddStructuralFeatureValueAction) and parent.oclAsType(AddStructuralFeatureValueAction)._object->includes(element.oclAsType(InputPin))) 'InputPin_AddStructuralFeatureValueActionObjectShape';
+
+ case (parent.oclIsTypeOf(SendObjectAction) and parent.oclAsType(SendObjectAction).target->includes(element.oclAsType(InputPin))) 'InputPin_SendObjectActionTargetShape';
+ case (parent.oclIsTypeOf(SendObjectAction) and parent.oclAsType(SendObjectAction).request->includes(element.oclAsType(InputPin))) 'InputPin_SendObjectActionRequestShape';
+
+ case (parent.oclIsTypeOf(CallOperationAction) and parent.oclAsType(CallOperationAction).target->includes(element.oclAsType(InputPin))) 'InputPin_CallOperationActionTargetShape';
+ case (parent.oclIsTypeOf(CallOperationAction)) 'InputPin_CallOperationActionArgumentShape';
+
+ case (parent.oclIsTypeOf(AddVariableValueAction) and parent.oclAsType(AddVariableValueAction).insertAt->includes(element.oclAsType(InputPin))) 'InputPin_AddVariableValueActionInsertAtShape';
+ case (parent.oclIsTypeOf(AddVariableValueAction) and parent.oclAsType(AddVariableValueAction).value->includes(element.oclAsType(InputPin))) 'InputPin_AddVariableValueActionValueShape';
+
+ else self.fail();
+ };
+
+ } endif;
+
+ //Specific cases for Action input pins
+ if element.oclIsTypeOf(ActionInputPin) then {
+ type := switch {
+ case (parent.oclIsTypeOf(SendSignalAction) and parent.oclAsType(SendSignalAction).target->includes(element.oclAsType(InputPin))) 'ActionInputPin_SendSignalActionTargetShape';
+ case (parent.oclIsTypeOf(SendSignalAction)) 'ActionInputPin_SendSignalActionArgumentShape';
+
+ case (parent.oclIsTypeOf(SendObjectAction) and parent.oclAsType(SendObjectAction).target->includes(element.oclAsType(InputPin))) 'ActionInputPin_SendObjectActionTargetShape';
+ case (parent.oclIsTypeOf(SendObjectAction) and parent.oclAsType(SendObjectAction).request->includes(element.oclAsType(InputPin))) 'ActionInputPin_SendObjectActionRequestShape';
+
+ case (parent.oclIsTypeOf(CallOperationAction) and parent.oclAsType(CallOperationAction).target->includes(element.oclAsType(InputPin))) 'ActionInputPin_CallOperationActionTargetShape';
+ case (parent.oclIsTypeOf(CallOperationAction)) 'ActionInputPin_CallOperationActionArgumentShape';
+
+ case (parent.oclIsTypeOf(OpaqueAction)) 'ActionInputPin_OpaqueActionInputShape';
+ case (parent.oclIsTypeOf(CallBehaviorAction)) 'ActionInputPin_CallBehaviorActionArgumentShape';
+
+ else self.fail();
+ };
+
+ } endif;
+
+ //Specific cases for Value pins
+ if element.oclIsTypeOf(ValuePin) then {
+ type := switch {
+
+ case (parent.oclIsTypeOf(CallBehaviorAction)) 'ValuePin_CallBehaviorActionArgumentShape';
+ case (parent.oclIsTypeOf(OpaqueAction)) 'ValuePin_OpaqueActionInputShape';
+
+ case (parent.oclIsTypeOf(SendSignalAction) and parent.oclAsType(SendSignalAction).target->includes(element.oclAsType(InputPin))) 'ValuePin_SendSignalActionTargetShape';
+ case (parent.oclIsTypeOf(SendSignalAction)) 'ValuePin_SendSignalActionArgumentShape';
+
+ case (parent.oclIsTypeOf(CallOperationAction) and parent.oclAsType(CallOperationAction).target->includes(element.oclAsType(InputPin))) 'ValuePin_CallOperationActionTargetShape';
+ case (parent.oclIsTypeOf(CallOperationAction)) 'ValuePin_CallOperationActionArgumentShape';
+
+ case (parent.oclIsTypeOf(SendObjectAction) and parent.oclAsType(SendObjectAction).request->includes(element.oclAsType(InputPin))) 'ValuePin_SendObjectActionRequestShape';
+ case (parent.oclIsTypeOf(SendObjectAction) and parent.oclAsType(SendObjectAction).target->includes(element.oclAsType(InputPin))) 'ValuePin_SendObjectActionTargetShape';
+
+ else self.fail();
+ };
+ } endif;
+
+ //TODO: specific cases for constraints (pre/post/...)
+
+ if type <> null then
+ return type
+ endif;
+
+ //Generated cases
+ return
+ if element.oclIsTypeOf(Constraint) then 'Constraint_Shape'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_PreconditionLabel'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_PostconditionLabel'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_LocalPreconditionShape'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_LocalPostconditionShape'
+ elif element.oclIsTypeOf(IntervalConstraint) then 'IntervalConstraint_LocalPostconditionShape'
+ elif element.oclIsTypeOf(IntervalConstraint) then 'IntervalConstraint_LocalPreconditionShape'
+ elif element.oclIsTypeOf(DurationConstraint) then 'DurationConstraint_LocalPostconditionShape'
+ elif element.oclIsTypeOf(TimeConstraint) then 'TimeConstraint_LocalPreconditionShape'
+ elif element.oclIsTypeOf(TimeConstraint) then 'TimeConstraint_LocalPostconditionShape'
+ elif element.oclIsTypeOf(DurationConstraint) then 'DurationConstraint_LocalPreconditionShape'
+ elif element.oclIsTypeOf(FlowFinalNode) then 'FlowFinalNode_Shape'
+ elif element.oclIsTypeOf(ActivityPartition) then 'ActivityPartition_Shape'
+ elif element.oclIsTypeOf(BroadcastSignalAction) then 'BroadcastSignalAction_Shape'
+ elif element.oclIsTypeOf(SequenceNode) then 'SequenceNode_Shape'
+ elif element.oclIsTypeOf(ReadSelfAction) then 'ReadSelfAction_Shape'
+ elif element.oclIsTypeOf(ActivityFinalNode) then 'ActivityFinalNode_Shape'
+ elif element.oclIsTypeOf(SendSignalAction) then 'SendSignalAction_Shape'
+ elif element.oclIsTypeOf(InitialNode) then 'InitialNode_Shape'
+ elif element.oclIsTypeOf(AddStructuralFeatureValueAction) then 'AddStructuralFeatureValueAction_Shape'
+ elif element.oclIsTypeOf(LoopNode) then 'LoopNode_Shape'
+ elif element.oclIsTypeOf(ForkNode) then 'ForkNode_Shape'
+ elif element.oclIsTypeOf(ExpansionNode) then 'ExpansionNode_InputShape'
+ elif element.oclIsTypeOf(CallOperationAction) then 'CallOperationAction_Shape'
+ elif element.oclIsTypeOf(AddVariableValueAction) then 'AddVariableValueAction_Shape'
+ elif element.oclIsTypeOf(ExpansionNode) then 'ExpansionNode_OutputShape'
+ elif element.oclIsTypeOf(Parameter) then 'Parameter_ParameterLabel'
+ elif element.oclIsTypeOf(ReadVariableAction) then 'ReadVariableAction_Shape'
+ elif element.oclIsTypeOf(OpaqueAction) then 'OpaqueAction_Shape'
+ elif element.oclIsTypeOf(InterruptibleActivityRegion) then 'InterruptibleActivityRegion_Shape'
+ elif element.oclIsTypeOf(JoinNode) then 'JoinNode_Shape'
+ elif element.oclIsTypeOf(StructuredActivityNode) then 'StructuredActivityNode_Shape'
+ elif element.oclIsTypeOf(ConditionalNode) then 'ConditionalNode_Shape'
+ elif element.oclIsTypeOf(DecisionNode) then 'DecisionNode_Shape'
+ elif element.oclIsTypeOf(ActivityParameterNode) then 'ActivityParameterNode_Shape'
+ elif element.oclIsTypeOf(CentralBufferNode) then 'CentralBufferNode_Shape'
+ elif element.oclIsTypeOf(Comment) then 'Comment_Shape'
+ elif element.oclIsTypeOf(DestroyObjectAction) then 'DestroyObjectAction_Shape'
+ elif element.oclIsTypeOf(CreateObjectAction) then 'CreateObjectAction_Shape'
+ elif element.oclIsTypeOf(DataStoreNode) then 'DataStoreNode_Shape'
+ elif element.oclIsTypeOf(CallBehaviorAction) then 'CallBehaviorAction_Shape'
+ elif element.oclIsTypeOf(ExpansionRegion) then 'ExpansionRegion_Shape'
+ elif element.oclIsTypeOf(SendObjectAction) then 'SendObjectAction_Shape'
+ elif element.oclIsTypeOf(MergeNode) then 'MergeNode_Shape'
+ elif element.oclIsTypeOf(ValueSpecificationAction) then 'ValueSpecificationAction_Shape'
+ elif element.oclIsTypeOf(AcceptEventAction) then 'AcceptEventAction_Shape'
+ elif element.oclIsTypeOf(Activity) then 'Activity_Shape'
+ elif element.oclIsTypeOf(ReadStructuralFeatureAction) then 'ReadStructuralFeatureAction_Shape'
+ else self.fail()
+ endif;
+
+
+
+}
+
+
+query View::getDecorationType(element : Element) : String{
+ var res := self.doGetDecorationType(element);
+
+ /*
+ log('Get papyrus ID for'+ self.element.eClass().name+', '+self.type);
+
+ log(res);
+
+ if self.container().oclIsKindOf(Node) then
+ log('IsNode')
+ else
+ log('IsEdge')
+ endif;
+ */
+
+ return res;
+
+}
+
+query View::doGetDecorationType(element : Element) : String{
+ return if self.container().oclIsKindOf(Node) then {
+ return if element.oclIsTypeOf(ActivityPartition) then
+ return switch {
+ case (self.type = 'PartitionName') 'ActivityPartition_NameLabel';
+ case (self.type = 'PartitionCompartment') 'ActivityPartition_ActivityNodeCompartment';
+ }
+ elif element.oclIsTypeOf(Constraint) then
+ return switch {
+ case (self.type = 'Name') 'Constraint_NameLabel';
+ }
+ elif element.oclIsTypeOf(IntervalConstraint) then
+ return switch {
+ case (self.type = 'Name') 'IntervalConstraint_LocalPostconditionNameLabel';
+
+ }
+ elif element.oclIsTypeOf(BroadcastSignalAction) then
+ return switch {
+ case (self.type = 'Name') 'BroadcastSignalAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(SequenceNode) then
+ return switch {
+
+ case (self.type = 'StructureCompartment') 'SequenceNode_ActivityNodeCompartment';
+ }
+ elif element.oclIsTypeOf(ReadSelfAction) then
+ return switch {
+ case (self.type = 'Name') 'ReadSelfAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(SendSignalAction) then
+ return switch {
+ case (self.type = 'Name') 'SendSignalAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(AddStructuralFeatureValueAction) then
+ return switch {
+ case (self.type = 'Name') 'AddStructuralFeatureValueAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(DurationConstraint) then
+ return switch {
+ case (self.type = 'Name') 'DurationConstraint_LocalPostconditionNameLabel';
+
+ }
+ elif element.oclIsTypeOf(LoopNode) then
+ return switch {
+
+ case (self.type = 'StructureCompartment') 'LoopNode_ActivityNodeCompartment';
+ }
+ elif element.oclIsTypeOf(CallOperationAction) then
+ return switch {
+ case (self.type = 'Name') 'CallOperationAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(IntervalConstraint) then
+ return switch {
+ case (self.type = 'Name') 'IntervalConstraint_LocalPreconditionNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Constraint) then
+ return switch {
+ case (self.type = 'Name') 'Constraint_LocalPreconditionNameLabel';
+
+ }
+ elif element.oclIsTypeOf(AddVariableValueAction) then
+ return switch {
+ case (self.type = 'Name') 'AddVariableValueAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(ReadVariableAction) then
+ return switch {
+ case (self.type = 'Name') 'ReadVariableAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(OpaqueAction) then
+ return switch {
+ case (self.type = 'Name') 'OpaqueAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(InterruptibleActivityRegion) then
+ return switch {
+
+ case (self.type = 'StructureCompartment') 'InterruptibleActivityRegion_ActivityNodeCompartment';
+ }
+ elif element.oclIsTypeOf(Constraint) then
+ return switch {
+ case (self.type = 'Name') 'Constraint_LocalPostconditionNameLabel';
+
+ }
+ elif element.oclIsTypeOf(StructuredActivityNode) then
+ return switch {
+ case (self.type = 'Name') 'StructuredActivityNode_KeywordLabel';
+ case (self.type = 'StructuredActivityNodeCompartment') 'StructuredActivityNode_ActivityNodeCompartment';
+ }
+ elif element.oclIsTypeOf(ConditionalNode) then
+ return switch {
+
+ case (self.type = 'StructureCompartment') 'ConditionalNode_ActivityNodeCompartment';
+ }
+ elif element.oclIsTypeOf(TimeConstraint) then
+ return switch {
+ case (self.type = 'Name') 'TimeConstraint_LocalPreconditionNameLabel';
+
+ }
+ elif element.oclIsTypeOf(ActivityParameterNode) then
+ return switch {
+ case (self.type = 'ObjectNodeNameLabel') 'ActivityParameterNode_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(DestroyObjectAction) then
+ return switch {
+ case (self.type = 'Name') 'DestroyObjectAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(CreateObjectAction) then
+ return switch {
+ case (self.type = 'Name') 'CreateObjectAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(CallBehaviorAction) then
+ return switch {
+ case (self.type = 'Name') 'CallBehaviorAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(ExpansionRegion) then
+ return switch {
+
+ case (self.type = 'StructureCompartment') 'ExpansionRegion_ActivityNodeCompartment';
+ }
+ elif element.oclIsTypeOf(SendObjectAction) then
+ return switch {
+ case (self.type = 'Name') 'SendObjectAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(TimeConstraint) then
+ return switch {
+ case (self.type = 'Name') 'TimeConstraint_LocalPostconditionNameLabel';
+
+ }
+ elif element.oclIsTypeOf(DurationConstraint) then
+ return switch {
+ case (self.type = 'Name') 'DurationConstraint_LocalPreconditionNameLabel';
+
+ }
+ elif element.oclIsTypeOf(ValueSpecificationAction) then
+ return switch {
+ case (self.type = 'Name') 'ValueSpecificationAction_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Activity) then
+ return switch {
+ case (self.type = 'Name') 'Activity_NameLabel';
+ case (self.type = 'ActivityCompartment') 'Activity_ActivityNodeCompartment';
+ }
+ elif element.oclIsTypeOf(ReadStructuralFeatureAction) then
+ return switch {
+ case (self.type = 'Name') 'ReadStructuralFeatureAction_NameLabel';
+ }
+ elif element.oclIsTypeOf(AcceptEventAction) then
+ return switch {
+ case (self.type = 'Name') 'AcceptEventAction_NameLabel';
+ }
+ elif element.oclIsTypeOf(InputPin) then
+ 'InputPin_OpaqueActionInputNameLabel'
+ elif element.oclIsTypeOf(ValuePin) then
+ 'ValuePin_OpaqueActionInputValueLabel'
+ elif element.oclIsTypeOf(OutputPin) then
+ 'OutputPin_OpaqueActionOutputNameLabel'
+ elif element.oclIsTypeOf(ActionInputPin) then
+ 'ActionInputPin_OpaqueActionInputNameLabel'
+ endif
+ } else {
+ return if element.oclIsTypeOf(ObjectFlow) then
+ return switch {
+ case (self.type='Name') 'ObjectFlow_NameLabel';
+ case (self.type = 'NameLabel') 'ObjectFlow_NameLabel';
+ case (self.type = 'KindLabel') 'ObjectFlow_StereotypeLabel';
+
+ }
+ elif element.oclIsTypeOf(ControlFlow) then
+ return switch {
+ case (self.type='Name') 'ControlFlow_NameLabel';
+ case (self.type = 'NameLabel') 'ControlFlow_NameLabel';
+ case (self.type = 'KindLabel') 'ControlFlow_StereotypeLabel';
+ }
+ endif
+ } endif;
+}
+
+
+query View::getEdgeType(element : Element) : String {
+ return
+ if self.type = 'Reference' then '' /* Constraint/Comment links handled separately */
+ elif element.oclIsTypeOf(ObjectFlow) then 'ObjectFlow_Edge'
+ elif element.oclIsTypeOf(ControlFlow) then 'ControlFlow_Edge'
+ elif element.oclIsTypeOf(ExceptionHandler) then 'ExceptionHandler_Edge'
+ else self.fail()
+ endif;
+}
+
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAClassDiagram.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAClassDiagram.qvto
new file mode 100644
index 0000000..90e3372
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAClassDiagram.qvto
@@ -0,0 +1,1287 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 465656
+ *****************************************************************************/
+import RSAToPapyrus;
+import org.eclipse.papyrus.interoperability.common.blackboxes.utils.Properties;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype vpconfig "strict" uses 'http://www.eclipse.org/papyrus/infra/viewpoints/configuration';
+modeltype vpstyle "strict" uses 'http://www.eclipse.org/papyrus/infra/viewpoints/policy/style';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSAClassDiagram(inout semantics : uml, inout graphics : notation, out di : sash, in param : config);
+
+main() {
+ semantics.rootObjects()[uml::Element]->map toOwnedDiagrams();
+}
+
+query View::getDiagramType() : String{
+ return 'PapyrusUMLClassDiagram';
+}
+
+
+
+mapping notation::Diagram::generateDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ (self.type = 'Class' or self.type='Object') and not self.findElement().oclIsTypeOf(Profile)
+}{
+
+ end {
+
+ /* Post action: Move AssociationClasses to the right parent (Dashed Edge + Node) */
+ /* Easier to do in post-treatment than during the transformation (The transformation can remain generic) */
+ result.map handleAssociationClasses();
+ graphics.objectsOfType(Shape)->select(type = 'Comment_Shape').map addCommentDecoration();
+ graphics.objectsOfType(Shape)->select(type = 'Constraint_PackagedElementShape').map addConstraintDecoration();
+ if not result.element.oclIsKindOf(Package) then
+ result.map toInnerClassDiagram()
+ endif;
+ }
+}
+
+mapping inout Diagram::toInnerClassDiagram() : PapyrusViewStyle{
+ result.owner := self.element;
+ result._configuration := getInnerClassDiagramView();
+
+ self.styles += result;
+}
+
+query getInnerClassDiagramView() : PapyrusDiagram {
+ return getEObjectProperty('InnerClassDiagramView').oclAsType(PapyrusDiagram);
+}
+
+mapping inout Shape::addCommentDecoration() when {
+ self.type = 'Comment_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Comment_BodyLabel'; //Comment body
+ }
+
+}
+
+mapping inout Shape::addConstraintDecoration() when {
+ self.type = 'Constraint_PackagedElementShape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Constraint_BodyLabel'; //Constraint specification
+ }
+
+}
+
+mapping inout Diagram::handleAssociationClasses() {
+ graphics.objectsOfType(Shape)->select(type = 'AssociationClass_Shape').map updateLocation();
+
+ self.children := self.children->union(graphics.objectsOfKind(Node)->select(diagram = self and type = 'AssociationClass_Shape'));
+}
+
+mapping inout Shape::updateLocation() {
+ var dashedEdge := graphics.objectsOfType(Connector)->select(type = 'AssociationClass_TetherEdge' and source = self or target = self)->any(true);
+
+ var association := dashedEdge.findConnector();
+
+ var source := association.source.oclAsType(Shape);
+ var target := association.target.oclAsType(Shape);
+
+ var sourcePosition := source.getBounds();
+ var targetPosition := target.getBounds();
+
+ var bounds := self.getBounds();
+
+ bounds.x := (((sourcePosition.x + targetPosition.x)/2) + bounds.x).round();
+ bounds.y := (((sourcePosition.y + targetPosition.y)/2) + bounds.y).round();
+}
+
+/**
+* From the Dashed edge of an Association Class, returns the actual Association connector
+*/
+query Connector::findConnector() : Connector {
+ var view := if self.source.oclIsKindOf(Connector) then self.source else self.target endif;
+ return view.oclAsType(Connector);
+}
+
+query Shape::getBounds() : Bounds {
+ return self.oclAsType(Shape).layoutConstraint.oclAsType(Bounds);
+}
+
+/**
+* In Papyrus, an AssociationClass is composed of two edges and a Node (Full edge for association, dashed edge for Association class, Node for the class)
+* In RSA, an AssociationClass is a single Edge with compartments
+*/
+mapping UMLConnector::toAssociationClass() : Connector inherits Connector::toPapyrusConnector when {
+ self.element.oclIsTypeOf(AssociationClass)
+}{
+ result.styles := self.map toFontStyle();
+ var dashedEdge := object Connector {
+ type := 'AssociationClass_TetherEdge';
+ target := self.children->selectByKind(UMLShape)->any(true).map toPapyrusShape();
+ source := result;
+ styles := object FontStyle{};
+ bendpoints := object RelativeBendpoints{};
+ sourceAnchor := object IdentityAnchor{};
+ targetAnchor := object IdentityAnchor{};
+ };
+
+ var targetDiagram := self.diagram.map generateDiagram();
+ targetDiagram.edges += dashedEdge;
+}
+
+
+mapping Node::toNode() : Node disjuncts
+ UMLShape::toPapyrusShape,
+ UMLShapeCompartment::toStructureCompartment,
+ BasicSemanticCompartment::toListCompartment,
+ ListCompartment::toListCompartment,
+ BasicDecorationNode::toConnectorLabel,
+ BasicDecorationNode::toLabel
+ //TODO: Disjunct nodes mapping
+;
+
+mapping Edge::toEdge() : Edge disjuncts
+ UMLConnector::toCommentLink,
+ UMLConnector::toConstraintLink,
+ /*UMLConnector::toContextLink,*/
+ UMLConnector::toPapyrusConnector,
+ UMLConnector::toGeneralizationConnector,
+ UMLConnector::toAssociationClass
+;
+
+mapping UMLShapeCompartment::toStructureCompartment() : DecorationNode inherits UMLShapeCompartment::toAbstractStructureCompartment when {
+ self.type = 'StructureCompartment' or self.type = 'PackageContents' and not self.getType().oclIsUndefined();
+}{
+
+}
+
+
+/***** Nodes **********/
+
+mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when {
+ self.type = '' and (
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(AssociationClass)or
+ self.element.oclIsTypeOf(Association)or
+ self.element.oclIsTypeOf(InstanceSpecification)or
+ self.element.oclIsTypeOf(Component)or
+ self.element.oclIsTypeOf(Signal)or
+ self.element.oclIsTypeOf(Interface)or
+ self.element.oclIsTypeOf(Model)or
+ self.element.oclIsTypeOf(Enumeration)or
+ self.element.oclIsTypeOf(Package)or
+ self.element.oclIsTypeOf(InformationItem)or
+ self.element.oclIsTypeOf(Class)or
+ self.element.oclIsTypeOf(PrimitiveType)or
+ self.element.oclIsTypeOf(DataType)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(Comment)or
+ self.element.oclIsTypeOf(Diagram)or
+ self.element.oclIsTypeOf(DurationObservation)or
+ self.element.oclIsTypeOf(TimeObservation)or
+ self.element.oclIsKindOf(NamedElement)
+ )
+}{
+
+}
+
+
+/****** Connector Labels ******/
+
+mapping BasicDecorationNode::toConnectorLabel() : DecorationNode inherits Node::toPapyrusConnectorLabel when {
+ not self.getType().oclIsUndefined() and (
+ self.type = 'ToMultiplicityLabel' or
+ self.type = 'ToRoleLabel' or
+ self.type = 'FromMultiplicityLabel' or
+ self.type = 'FromRoleLabel' or
+ self.type = 'NameLabel' or
+ self.type = 'KindLabel'
+ )
+}{
+
+}
+
+/****** Compartments *******/
+
+mapping BasicDecorationNode::toLabel() : DecorationNode inherits Node::toPapyrusNode when {
+ self.element.oclIsKindOf(uml::NamedElement) and
+ self.type = 'Name'
+}{
+
+}
+
+//Synchronized Compartments
+mapping BasicSemanticCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ //TODO: EndsWith('Compartment')
+ self.type = 'OperationCompartment' or
+ self.type = 'SignalCompartment' or
+ self.type = 'AttributeCompartment' or
+ self.type.endsWith('Compartment')
+}{
+ result.children += self.findElement().map toContents(self);
+}
+
+//Standard Compartments (e.g. slots)
+mapping ListCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment')
+} {
+ //Super class implementation is sufficient. It will already transform the children and set the compartment ID
+ result.children += self.findElement().map toContents(self);
+}
+
+mapping Element::toContents(node : ListCompartment) : Sequence(Node) disjuncts
+ InstanceSpecification::toContents
+;
+
+mapping Element::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ AssociationClass::toContents,
+ Component::toContents,
+ Signal::toContents,
+ Interface::toContents,
+ Enumeration::toContents,
+ Class::toContents,
+ PrimitiveType::toContents,
+ DataType::toContents
+;
+
+mapping AssociationClass::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ AssociationClass::toAttributeCompartmentContents,
+ AssociationClass::toOperationCompartmentContents,
+ AssociationClass::toNestedClassifierCompartmentContents
+;
+
+mapping InstanceSpecification::toContents(node : ListCompartment) : Sequence(Node) disjuncts
+ InstanceSpecification::toSlotCompartmentContents
+;
+
+mapping Component::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Component::toAttributeCompartmentContents,
+ Component::toOperationCompartmentContents,
+ Component::toNestedClassifierCompartmentContents
+;
+
+mapping Signal::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Signal::toAttributeCompartmentContents
+;
+
+mapping Interface::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Interface::toAttributeCompartmentContents,
+ Interface::toOperationCompartmentContents,
+ Interface::toNestedClassifierCompartmentContents
+;
+
+mapping Enumeration::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Enumeration::toEnumerationLiteralCompartmentContents
+;
+
+mapping Class::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Class::toAttributeCompartmentContents,
+ Class::toOperationCompartmentContents,
+ Class::toNestedClassifierCompartmentContents
+;
+
+mapping PrimitiveType::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ PrimitiveType::toAttributeCompartmentContents,
+ PrimitiveType::toOperationCompartmentContents
+;
+
+mapping DataType::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ DataType::toAttributeCompartmentContents,
+ DataType::toOperationCompartmentContents
+;
+
+mapping AssociationClass::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping AssociationClass::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ }
+}
+
+mapping AssociationClass::toNestedClassifierCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'SignalCompartment';
+}{
+ init {
+ result := (self.map fillClass(node))
+ }
+}
+
+mapping InstanceSpecification::toSlotCompartmentContents(node : ListCompartment) : Sequence(Node) when {
+ node.type = 'SlotCompartment';
+}{
+ init {
+ result := (self.map fillSlot(node))
+ }
+}
+
+mapping Component::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping Component::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ ->union(self.map fillReception(node))
+ }
+}
+
+mapping Component::toNestedClassifierCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'SignalCompartment';
+}{
+ init {
+ result := (self.map fillClass(node))
+ ->union(self.map fillInterface(node))
+ ->union(self.map fillEnumeration(node))
+ ->union(self.map fillPrimitiveType(node))
+ ->union(self.map fillDataType(node))
+ ->union(self.map fillSignal(node))
+ }
+}
+
+mapping Signal::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping Interface::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping Interface::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ ->union(self.map fillReception(node))
+ }
+}
+
+mapping Interface::toNestedClassifierCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'SignalCompartment';
+}{
+ init {
+ result := (self.map fillClass(node))
+ ->union(self.map fillInterface(node))
+ ->union(self.map fillEnumeration(node))
+ ->union(self.map fillPrimitiveType(node))
+ ->union(self.map fillDataType(node))
+ ->union(self.map fillSignal(node))
+ }
+}
+
+mapping Enumeration::toEnumerationLiteralCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'EnumerationCompartment';
+}{
+ init {
+ result := (self.map fillEnumerationLiteral(node))
+ }
+}
+
+mapping Class::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping Class::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment';
+}{
+ init {
+ result := (self.map fillReception(node))
+ ->union(self.map fillOperation(node))
+ }
+}
+
+mapping Class::toNestedClassifierCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'SignalCompartment';
+}{
+ init {
+ result := (self.map fillClass(node))
+ ->union(self.map fillInterface(node))
+ ->union(self.map fillEnumeration(node))
+ ->union(self.map fillPrimitiveType(node))
+ ->union(self.map fillDataType(node))
+ ->union(self.map fillSignal(node))
+ }
+}
+
+mapping PrimitiveType::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping PrimitiveType::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ }
+}
+
+mapping DataType::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping DataType::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ }
+}
+
+mapping uml::Class::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property)->select(association.oclIsUndefined()).map toPropertyInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Component::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property)->select(association.oclIsUndefined()).map toPropertyInComponent(node)->asSequence();
+ }
+}
+
+mapping uml::Signal::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property)->select(association.oclIsUndefined()).map toPropertyInSignal(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property)->select(association.oclIsUndefined()).map toPropertyInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::PrimitiveType::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property)->select(association.oclIsUndefined()).map toPropertyInPrimitiveType(node)->asSequence();
+ }
+}
+
+mapping uml::DataType::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property)->select(association.oclIsUndefined()).map toPropertyInDataType(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillClass(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Class).map toClassInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Component::fillClass(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Class).map toClassInComponent(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillClass(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Class).map toClassInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Component::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInComponent(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::PrimitiveType::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInPrimitiveType(node)->asSequence();
+ }
+}
+
+mapping uml::DataType::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInDataType(node)->asSequence();
+ }
+}
+
+mapping uml::RedefinableTemplateSignature::fillConnectableElementTemplateParameter(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='TemplateParameterCompartment';
+}{
+ init {
+ result := self.parameter->selectByKind(ConnectableElementTemplateParameter).map toConnectableElementTemplateParameterInRedefinableTemplateSignature(node)->asSequence();
+ }
+}
+
+mapping uml::TemplateSignature::fillOperationTemplateParameter(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='TemplateParameterCompartment';
+}{
+ init {
+ result := self.parameter->selectByKind(OperationTemplateParameter).map toOperationTemplateParameterInTemplateSignature(node)->asSequence();
+ }
+}
+
+mapping uml::RedefinableTemplateSignature::fillClassifierTemplateParameter(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='TemplateParameterCompartment';
+}{
+ init {
+ result := self.parameter->selectByKind(ClassifierTemplateParameter).map toClassifierTemplateParameterInRedefinableTemplateSignature(node)->asSequence();
+ }
+}
+
+mapping uml::RedefinableTemplateSignature::fillTemplateParameter(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='TemplateParameterCompartment';
+}{
+ init {
+ result := self.parameter->selectByKind(TemplateParameter).map toTemplateParameterInRedefinableTemplateSignature(node)->asSequence();
+ }
+}
+
+mapping uml::Enumeration::fillEnumerationLiteral(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='EnumerationCompartment';
+}{
+ init {
+ result := self.ownedLiteral->selectByKind(EnumerationLiteral).map toEnumerationLiteralInEnumeration(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillReception(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedReception->selectByKind(Reception).map toReceptionInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillReception(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedReception->selectByKind(Reception).map toReceptionInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::InstanceSpecification::fillSlot(node : ListCompartment) : Sequence(Node) when {
+ node.type='SlotCompartment';
+}{
+ init {
+ result := self.slot->selectByKind(Slot).map toSlotInInstanceSpecification(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillInterface(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Interface).map toInterfaceInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Component::fillInterface(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Interface).map toInterfaceInComponent(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillInterface(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Interface).map toInterfaceInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillEnumeration(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Enumeration).map toEnumerationInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Component::fillEnumeration(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Enumeration).map toEnumerationInComponent(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillEnumeration(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Enumeration).map toEnumerationInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillPrimitiveType(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(PrimitiveType).map toPrimitiveTypeInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Component::fillPrimitiveType(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(PrimitiveType).map toPrimitiveTypeInComponent(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillPrimitiveType(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(PrimitiveType).map toPrimitiveTypeInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillDataType(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(DataType).map toDataTypeInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Component::fillDataType(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(DataType).map toDataTypeInComponent(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillDataType(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(DataType).map toDataTypeInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillSignal(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Signal).map toSignalInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Component::fillSignal(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Signal).map toSignalInComponent(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillSignal(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='SignalCompartment';
+}{
+ init {
+ result := self.nestedClassifier->selectByKind(Signal).map toSignalInInterface(node)->asSequence();
+ }
+}
+
+mapping Property::toPropertyInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_ClassAttributeLabel';
+}
+
+mapping Property::toPropertyInComponent(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_ComponentAttributeLabel';
+}
+
+mapping Property::toPropertyInSignal(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_SignalAttributeLabel';
+}
+
+mapping Property::toPropertyInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_InterfaceAttributeLabel';
+}
+
+mapping Property::toPropertyInPrimitiveType(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_PrimitiveTypeAttributeLabel';
+}
+
+mapping Property::toPropertyInDataType(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_DataTypeAttributeLabel';
+}
+
+mapping Class::toClassInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Class_ClassNestedClassifierLabel';
+}
+
+mapping Class::toClassInComponent(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Class_ComponentNestedClassifierLabel';
+}
+
+mapping Class::toClassInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Class_InterfaceNestedClassifierLabel';
+}
+
+mapping Operation::toOperationInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_ClassOperationLabel';
+}
+
+mapping Operation::toOperationInComponent(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_ComponentOperationLabel';
+}
+
+mapping Operation::toOperationInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_InterfaceOperationLabel';
+}
+
+mapping Operation::toOperationInPrimitiveType(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_PrimitiveTypeOperationLabel';
+}
+
+mapping Operation::toOperationInDataType(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_DataTypeOperationLabel';
+}
+
+mapping ConnectableElementTemplateParameter::toConnectableElementTemplateParameterInRedefinableTemplateSignature(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'ConnectableElementTemplateParameter_TemplateParameterLabel';
+}
+
+mapping OperationTemplateParameter::toOperationTemplateParameterInTemplateSignature(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'OperationTemplateParameter_TemplateParameterLabel';
+}
+
+mapping ClassifierTemplateParameter::toClassifierTemplateParameterInRedefinableTemplateSignature(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'ClassifierTemplateParameter_TemplateParameterLabel';
+}
+
+mapping TemplateParameter::toTemplateParameterInRedefinableTemplateSignature(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'TemplateParameter_TemplateParameterLabel';
+}
+
+mapping EnumerationLiteral::toEnumerationLiteralInEnumeration(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'EnumerationLiteral_LiteralLabel';
+}
+
+mapping Reception::toReceptionInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Reception_ReceptionLabel';
+}
+
+mapping Reception::toReceptionInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Reception_InterfaceReceptionLabel';
+}
+
+mapping Slot::toSlotInInstanceSpecification(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Slot_SlotLabel';
+}
+
+mapping Interface::toInterfaceInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Interface_ClassNestedClassifierLabel';
+}
+
+mapping Interface::toInterfaceInComponent(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Interface_ComponentNestedClassifierLabel';
+}
+
+mapping Interface::toInterfaceInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Interface_InterfaceNestedClassifierLabel';
+}
+
+mapping Enumeration::toEnumerationInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Enumeration_ClassNestedClassifierLabel';
+}
+
+mapping Enumeration::toEnumerationInComponent(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Enumeration_ComponentNestedClassifierLabel';
+}
+
+mapping Enumeration::toEnumerationInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Enumeration_InterfaceNestedClassifierLabel';
+}
+
+mapping PrimitiveType::toPrimitiveTypeInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'PrimitiveType_ClassNestedClassifierLabel';
+}
+
+mapping PrimitiveType::toPrimitiveTypeInComponent(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'PrimitiveType_ComponentNestedClassifierLabel';
+}
+
+mapping PrimitiveType::toPrimitiveTypeInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'PrimitiveType_InterfaceNestedClassifierLabel';
+}
+
+mapping DataType::toDataTypeInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'DataType_ClassNestedClassifierLabel';
+}
+
+mapping DataType::toDataTypeInComponent(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'DataType_ComponentNestedClassifierLabel';
+}
+
+mapping DataType::toDataTypeInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'DataType_InterfaceNestedClassifierLabel';
+}
+
+mapping Signal::toSignalInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Signal_ClassNestedClassifierLabel';
+}
+
+mapping Signal::toSignalInComponent(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Signal_ComponentNestedClassifierLabel';
+}
+
+mapping Signal::toSignalInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Signal_InterfaceNestedClassifierLabel';
+}
+
+
+
+/******* Edges ********/
+
+
+mapping UMLConnector::toPapyrusConnector() : Connector inherits Connector::toPapyrusConnector when {
+ self.type = '' and (
+ /*self.element.oclIsTypeOf(AssociationClass)or*/
+ self.element.oclIsTypeOf(Association)or
+ self.element.oclIsTypeOf(Association)or
+ self.element.oclIsTypeOf(InterfaceRealization)or
+ self.element.oclIsTypeOf(Substitution)or
+ self.element.oclIsTypeOf(Realization)or
+ self.element.oclIsTypeOf(Abstraction)or
+ self.element.oclIsTypeOf(Usage)or
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(ElementImport)or
+ self.element.oclIsTypeOf(PackageImport)or
+ self.element.oclIsTypeOf(PackageMerge)or
+ self.element.oclIsTypeOf(ProfileApplication)or
+ self.element.oclIsTypeOf(TemplateBinding)or
+ self.element.oclIsTypeOf(GeneralizationSet)or
+ self.element.oclIsTypeOf(InstanceSpecification)or
+ self.element.oclIsTypeOf(InformationFlow)
+
+ )
+}{
+ result.styles := self.map toFontStyle();
+}
+
+mapping UMLConnector::toGeneralizationConnector() : Connector inherits Connector::toPapyrusConnector when {
+ self.type='' and self.element.oclIsTypeOf(Generalization)
+}{
+ result.children->forEach(element){
+ element.type:='Generalization_StereotypeLabel'
+ };
+ result.styles := self.map toFontStyle();
+ result.sourceAnchor := object IdentityAnchor{};
+ result.targetAnchor := object IdentityAnchor{};
+
+}
+
+mapping UMLConnector::toCommentLink() : Connector inherits Connector::toCommentLink when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Comment) or
+ self.target.element.oclIsKindOf(Comment)
+ )
+}{
+ result.type :='Comment_AnnotatedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+mapping UMLConnector::toConstraintLink() : Connector inherits Connector::toPapyrusConnector when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Constraint) or
+ self.target.element.oclIsKindOf(Constraint)
+ )
+}{
+ result.type :='Constraint_ConstrainedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+
+/* Context Links are not supported in RSA Class Diagrams */
+/*
+mapping UMLConnector::toContextLink() : Connector inherits Connector::toPapyrusConnector when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Constraint) or
+ self.target.element.oclIsKindOf(Constraint)
+ )
+}{
+ result.type :='Constraint_ContextEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+ result.children += object DecorationNode {
+ type := 'Constraint_KeywordLabel';
+ layoutConstraint := object Location {
+ y := 15;
+ }
+ }
+}
+*/
+
+/****** Element Type queries ******/
+
+query View::getNodeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(Dependency) then 'Dependency_Shape'
+ elif element.oclIsTypeOf(AssociationClass) then 'AssociationClass_Shape'
+ elif element.oclIsTypeOf(Association) then 'Association_Shape'
+ elif element.oclIsTypeOf(InstanceSpecification) then 'InstanceSpecification_Shape'
+ elif element.oclIsTypeOf(Component) then 'Component_Shape'
+ elif element.oclIsTypeOf(Signal) then 'Signal_Shape'
+ elif element.oclIsTypeOf(Interface) then 'Interface_Shape'
+ elif element.oclIsTypeOf(Model) then 'Model_Shape'
+ elif element.oclIsTypeOf(Enumeration) then 'Enumeration_Shape'
+ elif element.oclIsTypeOf(Package) then 'Package_Shape'
+ elif element.oclIsTypeOf(InformationItem) then 'InformationItem_Shape'
+ elif element.oclIsTypeOf(Class) then 'Class_Shape'
+ elif element.oclIsTypeOf(PrimitiveType) then 'PrimitiveType_Shape'
+ elif element.oclIsTypeOf(DataType) then 'DataType_Shape'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_PackagedElementShape'
+ elif element.oclIsTypeOf(Comment) then 'Comment_Shape'
+ elif element.oclIsTypeOf(Diagram) then 'Diagram_ShortcutShape'
+ elif element.oclIsTypeOf(DurationObservation) then 'DurationObservation_Shape'
+ elif element.oclIsTypeOf(TimeObservation) then 'TimeObservation_Shape'
+ elif element.oclIsKindOf(NamedElement) then 'NamedElement_DefaultShape'
+ else self.fail()
+ endif;
+}
+
+
+query View::getDecorationType(element : Element) : String{
+ var res := self.doGetDecorationType(element);
+
+ /*log('Get papyrus ID for'+ element.oclAsType(EObject).eClass().name+', '+self.type);
+
+ log(res);
+
+ if self.container().oclIsKindOf(Node) then
+ log('IsNode')
+ else
+ log('IsEdge')
+ endif;*/
+
+ return res;
+}
+
+query View::doGetDecorationType(element : Element) : String{
+
+ return if self.container().oclIsKindOf(Node) then {
+ return if element.oclIsKindOf(AssociationClass) then
+ return switch {
+ case (self.type = 'Name') 'AssociationClass_NameLabel';
+ case (self.type = 'AttributeCompartment') 'AssociationClass_AttributeCompartment';
+ case (self.type = 'OperationCompartment') 'AssociationClass_OperationCompartment';
+ case (self.type = 'SignalCompartment') 'AssociationClass_NestedClassifierCompartment';
+ }
+ elif element.oclIsKindOf(InstanceSpecification) then
+ return switch {
+ case (self.type = 'Name') 'InstanceSpecification_NameLabel';
+ case (self.type = 'SlotCompartment') 'InstanceSpecification_SlotCompartment';
+ }
+ elif element.oclIsKindOf(Component) then
+ return switch {
+ case (self.type = 'Name') 'Component_NameLabel';
+ case (self.type = 'AttributeCompartment') 'Component_AttributeCompartment';
+ case (self.type = 'OperationCompartment') 'Component_OperationCompartment';
+ case (self.type = 'SignalCompartment') 'Component_NestedClassifierCompartment';
+ }
+ elif element.oclIsKindOf(Signal) then
+ return switch {
+ case (self.type = 'Name') 'Signal_NameLabel';
+ case (self.type = 'AttributeCompartment') 'Signal_AttributeCompartment';
+ }
+ elif element.oclIsKindOf(Interface) then
+ return switch {
+ case (self.type = 'Name') 'Interface_NameLabel';
+ case (self.type = 'AttributeCompartment') 'Interface_AttributeCompartment';
+ case (self.type = 'OperationCompartment') 'Interface_OperationCompartment';
+ case (self.type = 'SignalCompartment') 'Interface_NestedClassifierCompartment';
+ }
+ elif element.oclIsKindOf(Model) then
+ return switch {
+ case (self.type = 'Name') 'Model_NameLabel';
+ case (self.type = 'PackageContents') 'Model_PackagedElementCompartment';
+ }
+ elif element.oclIsKindOf(Enumeration) then
+ return switch {
+ case (self.type = 'Name') 'Enumeration_NameLabel';
+ case (self.type = 'EnumerationCompartment') 'Enumeration_LiteralCompartment';
+ }
+ elif element.oclIsKindOf(Package) then
+ return switch {
+ case (self.type = 'Name') 'Package_NameLabel';
+ case (self.type = 'PackageContents') 'Package_PackagedElementCompartment';
+ }
+ elif element.oclIsKindOf(InformationItem) then
+ return switch {
+ case (self.type = 'Name') 'InformationItem_NameLabel';
+
+ }
+ elif element.oclIsKindOf(Class) then
+ return switch {
+ case (self.type = 'Name') 'Class_NameLabel';
+ case (self.type = 'AttributeCompartment') 'Class_AttributeCompartment';
+ case (self.type = 'OperationCompartment') 'Class_OperationCompartment';
+ case (self.type = 'SignalCompartment') 'Class_NestedClassifierCompartment';
+ }
+ elif element.oclIsKindOf(PrimitiveType) then
+ return switch {
+ case (self.type = 'Name') 'PrimitiveType_NameLabel';
+ case (self.type = 'AttributeCompartment') 'PrimitiveType_AttributeCompartment';
+ case (self.type = 'OperationCompartment') 'PrimitiveType_OperationCompartment';
+ }
+ elif element.oclIsKindOf(DataType) then
+ return switch {
+ case (self.type = 'Name') 'DataType_NameLabel';
+ case (self.type = 'AttributeCompartment') 'DataType_AttributeCompartment';
+ case (self.type = 'OperationCompartment') 'DataType_OperationCompartment';
+ }
+ elif element.oclIsKindOf(Constraint) then
+ return switch {
+ case (self.type = 'Name') 'Constraint_NameLabel';
+
+ }
+ elif element.oclIsKindOf(Diagram) then
+ return switch {
+ case (self.type = 'Name') 'Diagram_NameLabel';
+
+ }
+ elif element.oclIsKindOf(DurationObservation) then
+ return switch {
+ case (self.type = 'Name') 'DurationObservation_FloatingNameLabel';
+
+ }
+ elif element.oclIsKindOf(TimeObservation) then
+ return switch {
+ case (self.type = 'Name') 'TimeObservation_FloatingNameLabel';
+
+ }
+ elif element.oclIsKindOf(NamedElement) then
+ return switch {
+ case (self.type = 'Name') 'NamedElement_NameLabel';
+ }
+ endif
+ } else {
+ return if element.oclIsKindOf(Association) then
+ return switch {
+ case (self.type='Name') 'Association_NameLabel';
+ case (self.type = 'KindLabel') 'Association_StereotypeLabel';
+ case (self.type = 'NameLabel') 'Association_NameLabel';
+ }
+ elif element.oclIsKindOf(Property) then
+ return if element.oclAsType(Property).association.oclIsTypeOf(Association) then
+ return switch {
+ case (self.type = 'ToRoleLabel') 'Association_TargetRoleLabel';
+
+ case (self.type = 'FromRoleLabel') 'Association_SourceRoleLabel';
+
+ case (self.type = 'FromMultiplicityLabel') 'Association_SourceMultiplicityLabel';
+
+ case (self.type = 'ToMultiplicityLabel') 'Association_TargetMultiplicityLabel';
+ }
+ elif element.oclAsType(Property).association.oclIsTypeOf(AssociationClass) then
+ return switch {
+ case (self.type = 'ToRoleLabel') 'AssociationClass_TargetRoleLabel';
+ case (self.type = 'FromRoleLabel') 'AssociationClass_SourceRoleLabel';
+ }
+ endif
+ elif element.oclIsKindOf(Generalization) then
+ return switch {
+
+ case (self.type = 'KindLabel') 'Generalization_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(InterfaceRealization) then
+ return switch {
+ case (self.type='Name') 'InterfaceRealization_NameLabel';
+ case (self.type = 'KindLabel') 'InterfaceRealization_StereotypeLabel';
+ case (self.type = 'NameLabel') 'InterfaceRealization_NameLabel';
+ }
+
+ elif element.oclIsKindOf(Substitution) then
+ return switch {
+ case (self.type='Name') 'Substitution_NameLabel';
+ case (self.type = 'KindLabel') 'Substitution_StereotypeLabel';
+ case (self.type = 'NameLabel') 'Substitution_NameLabel';
+ }
+
+ elif element.oclIsKindOf(Realization) then
+ return switch {
+ case (self.type='Name') 'Realization_NameLabel';
+ case (self.type = 'KindLabel') 'Realization_StereotypeLabel';
+ case (self.type = 'NameLabel') 'Realization_NameLabel';
+ }
+
+ elif element.oclIsKindOf(Abstraction) then
+ return switch {
+ case (self.type='Name') 'Abstraction_NameLabel';
+ case (self.type = 'NameLabel') 'Abstraction_NameLabel';
+ case (self.type = 'KindLabel') 'Abstraction_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(Usage) then
+ return switch {
+ case (self.type='Name') 'Usage_NameLabel';
+ case (self.type = 'NameLabel') 'Usage_NameLabel';
+ case (self.type = 'KindLabel') 'Usage_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(Dependency) then
+ return switch {
+ case (self.type='Name') 'Dependency_NameLabel';
+ case (self.type = 'NameLabel') 'Dependency_NameLabel';
+ case (self.type = 'KindLabel') 'Dependency_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(ElementImport) then
+ return switch {
+
+
+ case (self.type = 'KindLabel') 'ElementImport_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(PackageImport) then
+ return switch {
+
+ case (self.type = 'KindLabel') 'PackageImport_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(PackageMerge) then
+ return switch {
+
+ case (self.type = 'KindLabel') 'PackageMerge_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(TemplateBinding) then
+ return switch {
+
+
+ case (self.type = 'KindLabel') 'TemplateBinding_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(GeneralizationSet) then
+ return switch {
+
+
+ case (self.type = 'KindLabel') 'GeneralizationSet_StereotypeLabel';
+ }
+
+ elif element.oclIsKindOf(InformationFlow) then
+ return switch {
+
+
+ case (self.type = 'KindLabel') 'InformationFlow_StereotypeLabel';
+ }
+ endif;
+ } endif;
+}
+
+
+query View::getEdgeType(element : Element) : String {
+ return if self.type = 'Reference' then '' /* Context and Constraint Links handled separately */
+ elif element.oclIsTypeOf(AssociationClass) then 'AssociationClass_Edge'
+ elif element.oclIsTypeOf(Association) then 'Association_Edge'
+ elif element.oclIsTypeOf(Association) then 'Association_BranchEdge'
+ elif element.oclIsTypeOf(Generalization) then 'Generalization_Edge'
+ elif element.oclIsTypeOf(InterfaceRealization) then 'InterfaceRealization_Edge'
+ elif element.oclIsTypeOf(Substitution) then 'Substitution_Edge'
+ elif element.oclIsTypeOf(Realization) then 'Realization_Edge'
+ elif element.oclIsTypeOf(Abstraction) then 'Abstraction_Edge'
+ elif element.oclIsTypeOf(Usage) then 'Usage_Edge'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_Edge'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_BranchEdge'
+ elif element.oclIsTypeOf(ElementImport) then 'ElementImport_Edge'
+ elif element.oclIsTypeOf(PackageImport) then 'PackageImport_Edge'
+ elif element.oclIsTypeOf(PackageMerge) then 'PackageMerge_Edge'
+ elif element.oclIsTypeOf(ProfileApplication) then 'ProfileApplication_Edge'
+ elif element.oclIsTypeOf(Comment) then'Comment_AnnotatedElementEdge'
+ elif element.oclIsTypeOf(TemplateBinding) then 'TemplateBinding_Edge'
+ elif element.oclIsTypeOf(GeneralizationSet) then 'GeneralizationSet_Edge'
+ elif element.oclIsTypeOf(InstanceSpecification) then 'InstanceSpecification_Edge'
+ elif element.oclIsTypeOf(InformationFlow) then 'InformationFlow_Edge'
+ else self.fail()
+ endif;
+}
+
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAComponentDiagram.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAComponentDiagram.qvto
new file mode 100644
index 0000000..a05d1ac
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAComponentDiagram.qvto
@@ -0,0 +1,307 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 465656
+ *****************************************************************************/
+import RSAToPapyrus;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSAComponentDiagram(inout semantics : uml, out graphics : notation, in param : config) extends RSAToPapyrus;
+
+query View::getDiagramType() : String{
+ return 'PapyrusUMLComponentDiagram';
+}
+
+mapping notation::Diagram::toPapyrusComponentDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ self.type = 'Component'
+}{
+
+}
+
+mapping Node::toNode() : Node disjuncts
+ UMLShape::toPapyrusShape,
+ UMLShapeCompartment::toStructureCompartment,
+ BasicSemanticCompartment::toListCompartment,
+ BasicDecorationNode::toConnectorLabel,
+ BasicDecorationNode::toLabel
+ //TODO: Disjunct nodes mapping
+;
+
+mapping Edge::toEdge() : Edge disjuncts
+ UMLConnector::toPapyrusConnector
+ //TODO: Disjunct edges mapping
+;
+
+mapping UMLShapeCompartment::toStructureCompartment() : DecorationNode inherits UMLShapeCompartment::toAbstractStructureCompartment when {
+ self.type = 'StructureCompartment' or self.type = 'PackageContents' and not self.getType().oclIsUndefined();
+}{
+
+}
+
+
+/***** Nodes **********/
+
+mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when {
+ self.type = '' and not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(Component)or
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(Package)or
+ self.element.oclIsTypeOf(Port)or
+ self.element.oclIsTypeOf(Comment)or
+ self.element.oclIsTypeOf(Interface)or
+ self.element.oclIsTypeOf(Model)or
+ self.element.oclIsTypeOf(Property)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(Operation)or
+ self.element.oclIsTypeOf(Reception)
+ )
+}{
+
+}
+
+
+/****** Connector Labels ******/
+
+mapping BasicDecorationNode::toConnectorLabel() : DecorationNode inherits Node::toPapyrusConnectorLabel when {
+ not self.getType().oclIsUndefined() and (
+ self.type = 'ToMultiplicityLabel' or
+ self.type = 'ToRoleLabel' or
+ self.type = 'FromMultiplicityLabel' or
+ self.type = 'FromRoleLabel' or
+ self.type = 'NameLabel' or
+ self.type = 'KindLabel'
+ )
+}{}
+
+/****** Compartments *******/
+
+mapping BasicDecorationNode::toLabel() : DecorationNode inherits Node::toPapyrusNode when {
+ not self.getType().oclIsUndefined() and
+ self.element.oclIsKindOf(uml::NamedElement) and
+ self.type = 'Name'
+}{}
+
+mapping BasicSemanticCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment') and not self.getType().oclIsUndefined()
+}{
+ result.children := self.findElement().map toContents(self);
+}
+
+mapping Element::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Interface::toContents
+;
+
+mapping Interface::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Interface::toAttributeCompartmentContents,
+ Interface::toOperationCompartmentContents
+;
+
+mapping Interface::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping Interface::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'ReceptionCompartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ ->union(self.map fillReception(node))
+ }
+}
+
+mapping uml::Interface::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property).map toPropertyInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='ReceptionCompartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInInterface(node)->asSequence();
+ }
+}
+
+mapping uml::Interface::fillReception(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='ReceptionCompartment';
+}{
+ init {
+ result := self.ownedReception->selectByKind(Reception).map toReceptionInInterface(node)->asSequence();
+ }
+}
+
+mapping Property::toPropertyInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_InterfaceAttributeLabel';
+}
+
+mapping Operation::toOperationInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_InterfaceOperationLabel';
+}
+
+mapping Reception::toReceptionInInterface(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Reception_InterfaceReceptionLabel';
+}
+
+
+
+/******* Edges ********/
+
+
+mapping UMLConnector::toPapyrusConnector() : Connector inherits Connector::toPapyrusConnector when {
+ self.type = '' and
+ not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(Usage)or
+ self.element.oclIsTypeOf(InterfaceRealization)or
+ self.element.oclIsTypeOf(Generalization)or
+ self.element.oclIsTypeOf(Substitution)or
+ self.element.oclIsTypeOf(Manifestation)or
+ self.element.oclIsTypeOf(ComponentRealization)or
+ self.element.oclIsTypeOf(Abstraction)or
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(Dependency)
+ )
+}{
+ result.styles := self.map toFontStyle();
+}
+
+/****** Element Type queries ******/
+
+query View::getNodeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(Component) then 'Component_PackagedElementShape'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_Shape'
+ elif element.oclIsTypeOf(Package) then 'Package_Shape'
+ elif element.oclIsTypeOf(Port) then 'Port_Shape'
+ elif element.oclIsTypeOf(Comment) then 'Comment_Shape'
+ elif element.oclIsTypeOf(Interface) then 'Interface_ClassifierShape'
+ elif element.oclIsTypeOf(Model) then 'Model_Shape'
+ elif element.oclIsTypeOf(Property) then 'Property_InterfaceAttributeLabel'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_Shape'
+ elif element.oclIsTypeOf(Operation) then 'Operation_InterfaceOperationLabel'
+ elif element.oclIsTypeOf(Reception) then 'Reception_InterfaceReceptionLabel'
+ else self.fail()
+ endif;
+}
+
+
+query View::getDecorationType(element : Element) : String{
+ return self.doGetDecorationType(element);
+
+}
+
+query View::doGetDecorationType(element : Element) : String{
+ return if self.container().oclIsKindOf(Node) then {
+ return if element.oclIsTypeOf(Component) then
+ return switch {
+ case (self.type = 'Name') 'Component_NameLabel';
+ case (self.type = 'StructureCompartment') 'Component_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(Package) then
+ return switch {
+ case (self.type = 'Name') 'Package_NameLabel';
+ case (self.type = 'PackageContents') 'Package_PackagedElementCompartment';
+ }
+ elif element.oclIsTypeOf(Port) then
+ return switch {
+ case (self.type = 'Name') 'Port_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Interface) then
+ return switch {
+ case (self.type = 'Name') 'Interface_ClassifierNameLabel';
+ case (self.type = 'AttributeCompartment') 'Interface_AttributeCompartment';
+ case (self.type = 'ReceptionCompartment') 'Interface_OperationCompartment';
+ }
+ elif element.oclIsTypeOf(Model) then
+ return switch {
+ case (self.type = 'Name') 'Model_NameLabel';
+ case (self.type = 'StructureCompartment') 'Model_PackagedElementCompartment';
+ }
+ elif element.oclIsTypeOf(Constraint) then
+ return switch {
+ case (self.type = 'Name') 'Constraint_NameLabel';
+
+ }
+
+ endif
+ } else {
+ return if element.oclIsTypeOf(Generalization) then
+ return switch {
+
+ case (self.type = 'KindLabel') 'Generalization_StereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Substitution) then
+ return switch {
+ case (self.type='Name') 'Substitution_NameLabel';
+ case (self.type = 'NameLabel') 'Substitution_NameLabel';
+ case (self.type = 'KindLabel') 'Substitution_StereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Manifestation) then
+ return switch {
+ case (self.type='Name') 'Manifestation_NameLabel';
+ case (self.type = 'NameLabel') 'Manifestation_NameLabel';
+ case (self.type = 'KindLabel') 'Manifestation_StereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(ComponentRealization) then
+ return switch {
+ case (self.type='Name') 'ComponentRealization_NameLabel';
+ case (self.type = 'NameLabel') 'ComponentRealization_NameLabel';
+ case (self.type = 'KindLabel') 'ComponentRealization_StereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Abstraction) then
+ return switch {
+ case (self.type='Name') 'Abstraction_NameLabel';
+ case (self.type = 'NameLabel') 'Abstraction_NameLabel';
+ case (self.type = 'KindLabel') 'Abstraction_StereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Dependency) then
+ return switch {
+ case (self.type='Name') 'Dependency_NameLabel';
+ case (self.type = 'NameLabel') 'Dependency_NameLabel';
+ case (self.type = 'KindLabel') 'Dependency_StereotypeLabel';
+ }
+
+ endif
+ } endif;
+}
+
+
+query View::getEdgeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(Usage) then 'Usage_Edge'
+ elif element.oclIsTypeOf(InterfaceRealization) then 'InterfaceRealization_Edge'
+ elif element.oclIsTypeOf(Generalization) then 'Generalization_Edge'
+ elif element.oclIsTypeOf(Substitution) then 'Substitution_Edge'
+ elif element.oclIsTypeOf(Manifestation) then 'Manifestation_Edge'
+ elif element.oclIsTypeOf(ComponentRealization) then 'ComponentRealization_Edge'
+ elif element.oclIsTypeOf(Abstraction) then 'Abstraction_Edge'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_Edge'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_BranchEdge'
+ else self.fail()
+ endif;
+}
+
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAModelToPapyrus.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAModelToPapyrus.qvto
new file mode 100644
index 0000000..90816c7
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAModelToPapyrus.qvto
@@ -0,0 +1,129 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+import org.eclipse.papyrus.interoperability.common.utils.UI;
+import org.eclipse.papyrus.interoperability.common.utils.NotationTypes;
+import libraries.EclipseUI;
+import org.eclipse.papyrus.interoperability.rsa.RTMappings;
+import org.eclipse.papyrus.interoperability.common.blackboxes.emf.EMFResource;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+/**
+* Transformation rules for importing an RSA Semantic model into Papyrus (SashModel + cleanup semantics)
+*/
+transformation RSAModelToPapyrus(inout semantics : uml, inout graphics : notation, out di : sash, in param : config);
+
+
+main() {
+ assert fatal (not semantics.rootObjects()[uml::Element]->isEmpty()) with log('Cannot find root uml::Element');
+
+ //semantics.objectsOfType(Element).map deleteSourceDiagrams(); //TODO programatically to clean up everything (Avoid memory leaks)
+
+ if param.rootObjects()[Config]->any(true).convertOpaqueExpressionToLiteralString then
+ semantics.objectsOfType(OpaqueExpression).map convertToLiteralString()
+ endif;
+
+ semantics.objectsOfType(OpaqueExpression).map fixLanguage();
+ semantics.objectsOfType(Stereotype).map fixBaseProperties(); //Bug 492872: Multiplicity change between UML 2.3 (RSA) and 2.4+ (Papyrus)
+}
+
+//If the OpaqueExpression doesn't have a language, and a single body, replace it with a LiteralString
+mapping inout OpaqueExpression::convertToLiteralString() : LiteralString when {
+ (self.language->size() = 0 and self.body->size() <= 1) or
+ (self.language->size() = 1 and self.body->size() <= 1 and
+ self.language->at(1).isEmpty()
+ )
+} {
+ init {
+ result := self.map toLiteralString() //Blackbox cast: Transform OpaqueExpression to LiteralString (Preserve incoming references and compatible features)
+ }
+
+ result.value := if self.body->size() = 0 then null else self.body->at(1) endif;
+
+ self.oclAsType(EObject).forceDelete(true); //Destroy the source OpaqueExpression
+ worked(1);
+}
+
+intermediate class Opaque {
+ language: String;
+ body: String;
+}
+
+mapping inout OpaqueExpression::fixLanguage() when {
+ (self.language->size() > 1 or self.body->size() > 1) and
+ (self.language->exists(isEmpty()) or self.language.size() <> self.body.size())
+} {
+ //Replace empty languages by "Undefined" (In Papyrus, "Empty" is interpreted as "OCL", which is the default. This is not the case in RSA, where "Empty" means "Undefined")
+
+ var maxSize : Integer := self.language->size().max(self.body->size());
+
+ var newLanguages : OrderedSet(Opaque) := OrderedSet{};
+ var i : Integer = 1;
+
+ while(i <= maxSize) {
+ var lang : String := self.language->at(i);
+ var body : String := self.body->at(i);
+
+ var newLanguage := object Opaque{};
+ newLanguage.language := if lang.oclIsInvalid() or lang.isEmpty() then 'Undefined' else lang endif;
+ newLanguage.body := if body.oclIsInvalid() or body.isEmpty() then '' else body endif;
+
+ newLanguages += newLanguage;
+
+ i := i+1;
+ };
+
+ self.language := newLanguages.language;
+ self.body := newLanguages.body;
+}
+
+
+//Bug 492872: Multiplicity change between UML 2.3 (RSA) and 2.4+ (Papyrus)
+mapping inout Stereotype::fixBaseProperties() when {
+ self.baseProperties()->size() > 1
+}{
+ self.baseProperties().map fixMultiplicity();
+}
+
+mapping inout Property::fixMultiplicity() {
+ if (not self.lowerValue.oclIsUndefined()) and self.lowerValue.oclIsKindOf(LiteralInteger) then
+ self.lowerValue.oclAsType(LiteralInteger).value := 0
+ else
+ self.lowerValue := object LiteralInteger {
+ value := 0;
+ }
+ endif;
+
+ if (not self.upperValue.oclIsUndefined()) and self.upperValue.oclIsKindOf(LiteralUnlimitedNatural) then
+ self.upperValue.oclAsType(LiteralUnlimitedNatural).value := 1
+ elif (not self.upperValue.oclIsUndefined()) and self.upperValue.oclIsKindOf(LiteralInteger) then
+ self.upperValue.oclAsType(LiteralInteger).value := 1
+ else
+ self.upperValue := object LiteralUnlimitedNatural {
+ value := 1;
+ }
+ endif;
+}
+
+query String::isEmpty() : Boolean {
+ return self.oclIsUndefined() or self = '';
+}
+
+query Stereotype::baseProperties() : Set(Property){
+ return self.ownedAttribute->select(p | p.name.startsWith("base_") and p.type.oclIsTypeOf(Class)) //Typed with a UML Metaclass
+}
+
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAProfileDiagram.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAProfileDiagram.qvto
new file mode 100644
index 0000000..2b96a24
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAProfileDiagram.qvto
@@ -0,0 +1,504 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 465656
+ *****************************************************************************/
+import RSAToPapyrus;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSAProfileDiagram(inout semantics : uml, inout graphics : notation, out di : sash, in param : config);
+
+main() {
+ //RSA uses Classes, whereas Papyrus uses DataTypes. The Semantics is the same
+ //semantics.objectsOfType(Class)->map toDatatype(); //Disabled 2014/04/28. Papyrus now properly supports Classes in Profile Diagrams
+ //we generate our diagrams
+ semantics.rootObjects()[uml::Profile]
+ ->selectByType(uml::Profile) /* Workaround for Bug 445083/445198 */
+ ->map toOwnedDiagrams();
+}
+
+mapping notation::Diagram::generateDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ self.findElement().oclIsTypeOf(Profile)
+}{
+ end {
+ //POST ACTION UPDATE meta class to import element
+ semantics.objectsOfType(UMLConnector)->map toContextLink();
+ graphics.objectsOfType(Shape)->select(type = 'Comment_Shape').map addCommentDecoration();
+ graphics.objectsOfType(Shape)->select(type = 'Constraint_PackagedElementShape').map addConstraintDecoration();
+ }
+}
+
+mapping inout Shape::addCommentDecoration() when {
+ self.type = 'Comment_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Comment_BodyLabel'; //Comment body
+ }
+
+}
+
+mapping inout Shape::addConstraintDecoration() when {
+ self.type = 'Constraint_PackagedElementShape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Constraint_BodyLabel'; //Constraint specification
+ }
+
+}
+
+query View::getDiagramType() : String{
+ return 'PapyrusUMLProfileDiagram';
+}
+
+mapping UMLConnector::toContextLink() : notation::Connector inherits Connector::toPapyrusConnector when {
+ self.type = 'Reference' and self.source.element.oclIsKindOf(Constraint) and self.target.element.oclIsKindOf(Namespace)
+}{
+ result.type := 'Constraint_ContextEdge';
+ self.diagram.map generateDiagram().edges += result;
+}
+
+mapping notation::Diagram::toPapyrusProfileDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ self.type = 'Profile'
+}{
+
+}
+
+mapping Node::toNode() : Node disjuncts
+ UMLShape::toPapyrusShape,
+ UMLShapeCompartment::toStructureCompartment,
+ BasicSemanticCompartment::toListCompartment,
+ BasicDecorationNode::toConnectorLabel,
+ BasicDecorationNode::toLabel
+ //TODO: Disjunct nodes mapping
+;
+
+mapping Edge::toEdge() : Edge disjuncts
+ UMLConnector::toPapyrusConnector
+ //TODO: Disjunct edges mapping
+;
+
+mapping UMLShapeCompartment::toStructureCompartment() : DecorationNode inherits UMLShapeCompartment::toAbstractStructureCompartment when {
+ self.type = 'StructureCompartment' or self.type = 'PackageContents' and not self.getType().oclIsUndefined();
+}{
+
+}
+
+
+/***** Nodes **********/
+
+mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when {
+ self.type = '' and not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(Association)or
+ self.element.oclIsTypeOf(Stereotype)or
+ self.element.oclIsTypeOf(Class)or
+ self.element.oclIsTypeOf(Class)or
+ self.element.oclIsTypeOf(Comment)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(Model)or
+ self.element.oclIsTypeOf(Profile)or
+ self.element.oclIsTypeOf(Package)or
+ self.element.oclIsTypeOf(Enumeration)or
+ self.element.oclIsTypeOf(PrimitiveType)or
+ self.element.oclIsTypeOf(DataType)or
+ self.element.oclIsTypeOf(Diagram)
+ )
+}{
+
+}
+
+
+/****** Connector Labels ******/
+
+mapping BasicDecorationNode::toConnectorLabel() : DecorationNode inherits Node::toPapyrusConnectorLabel when {
+ not self.getType().oclIsUndefined() and (
+ self.type = 'ToMultiplicityLabel' or
+ self.type = 'ToRoleLabel' or
+ self.type = 'FromMultiplicityLabel' or
+ self.type = 'FromRoleLabel' or
+ self.type = 'NameLabel' or
+ self.type = 'KindLabel'
+ )
+};
+
+/****** Compartments *******/
+
+mapping BasicDecorationNode::toLabel() : DecorationNode inherits Node::toPapyrusNode when {
+ not self.getType().oclIsUndefined() and
+ self.element.oclIsKindOf(uml::NamedElement) and
+ self.type = 'Name'
+};
+
+mapping BasicSemanticCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment') and not self.getType().oclIsUndefined()
+}{
+ result.children := self.findElement().map toContents(self);
+}
+
+mapping Element::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Stereotype::toContents,
+ Class::toContents,
+ Enumeration::toContents,
+ DataType::toContents
+;
+
+mapping Stereotype::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Stereotype::toAttributeCompartmentContents,
+ Stereotype::toOperationCompartmentContents
+;
+
+mapping Class::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Class::toOperationCompartmentContents,
+ Class::toAttributeCompartmentContents
+;
+
+mapping Enumeration::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Enumeration::toEnumerationEnumerationLiteralContents
+;
+
+mapping DataType::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ DataType::toDataTypeAttributeCompartmentContents,
+ DataType::toDataTypeOperationCompartmentContents
+;
+
+mapping Stereotype::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping Stereotype::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ }
+}
+
+mapping Class::toOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment'
+ and not self.isMetaclass();
+}{
+ init {
+ result := (self.map fillOperation(node))
+ }
+}
+
+mapping Class::toAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment'
+ and not self.isMetaclass();
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping Enumeration::toEnumerationEnumerationLiteralContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'EnumerationCompartment';
+}{
+ init {
+ result := (self.map fillEnumerationLiteral(node))
+ }
+}
+
+mapping DataType::toDataTypeAttributeCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'AttributeCompartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping DataType::toDataTypeOperationCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'OperationCompartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ }
+}
+
+mapping uml::DataType::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInDataType(node)->asSequence();
+ }
+}
+
+mapping uml::Enumeration::fillEnumerationLiteral(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='EnumerationCompartment';
+}{
+ init {
+ result := self.ownedLiteral->selectByKind(EnumerationLiteral).map toEnumerationLiteralInEnumeration(node)->asSequence();
+ }
+}
+
+mapping uml::DataType::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property).map toPropertyInDataType(node)->asSequence();
+ }
+}
+
+mapping uml::Stereotype::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property).map toPropertyInStereotype(node)->asSequence();
+ }
+}
+
+mapping uml::Stereotype::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInStereotype(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='AttributeCompartment'
+ and not self.isMetaclass();
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property).map toPropertyInClass(node)->asSequence();
+ }
+}
+
+mapping uml::Class::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='OperationCompartment'
+ and not self.isMetaclass();
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInClass(node)->asSequence();
+ }
+}
+
+mapping Operation::toOperationInDataType(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_DataTypeOperationLabel';
+}
+
+mapping EnumerationLiteral::toEnumerationLiteralInEnumeration(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'EnumerationLiteral_LiteralLabel';
+}
+
+mapping Property::toPropertyInDataType(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_DataTypeAttributeLabel';
+}
+
+mapping Property::toPropertyInStereotype(node : Node) : Shape inherits Element::toCompartmentEntry when{
+ not self.name.startsWith('base_')
+}{
+ result.type := 'Property_ClassAttributeLabel';
+}
+
+mapping Operation::toOperationInStereotype(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_ClassOperationLabel';
+}
+
+mapping Property::toPropertyInClass(node : Node) : Shape inherits Element::toCompartmentEntry when{
+ not self.name.startsWith('base_')
+}{
+ result.type := 'Property_ClassAttributeLabel';
+}
+
+mapping Operation::toOperationInClass(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_ClassOperationLabel';
+}
+
+
+
+/******* Edges ********/
+
+
+mapping UMLConnector::toPapyrusConnector() : Connector inherits Connector::toPapyrusConnector when {
+ self.type = '' and
+ not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(Extension)or
+ self.element.oclIsTypeOf(Association)or
+ self.element.oclIsTypeOf(ProfileApplication)or
+ self.element.oclIsTypeOf(Association)or
+ self.element.oclIsTypeOf(Generalization)or
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(ElementImport)or
+ self.element.oclIsTypeOf(PackageImport)
+ )
+}{
+ result.styles := self.map toFontStyle();
+}
+
+/****** Element Type queries ******/
+
+query View::getNodeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(Dependency) then 'Dependency_Shape'
+ elif element.oclIsTypeOf(Association) then 'Association_Shape'
+ elif element.oclIsTypeOf(Stereotype) then 'Stereotype_Shape'
+ elif element.oclIsTypeOf(Class) and not element.oclAsType(Class).isMetaclass() then 'Class_Shape' //Class
+ elif element.oclIsTypeOf(Class) and element.oclAsType(Class).isMetaclass() then 'Class_MetaclassShape' //Metaclass
+ elif element.oclIsTypeOf(Comment) then 'Comment_Shape'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_PackagedElementShape'
+ elif element.oclIsTypeOf(Model) then 'Model_Shape'
+ elif element.oclIsTypeOf(Profile) then 'Profile_Shape'
+ elif element.oclIsTypeOf(Package) then 'Package_Shape'
+ elif element.oclIsTypeOf(Enumeration) then 'Enumeration_Shape'
+ elif element.oclIsTypeOf(PrimitiveType) then 'PrimitiveType_Shape'
+ elif element.oclIsTypeOf(DataType) then 'DataType_Shape'
+ elif element.oclIsTypeOf(Diagram) then 'Diagram_ShortcutShape'
+ else self.fail()
+ endif;
+}
+
+
+query View::getDecorationType(element : Element) : String{
+ var res := self.doGetDecorationType(element);
+
+ /*
+ log('Get papyrus ID for'+ self.element.eClass().name+', '+self.type);
+
+ log(res);
+
+ if self.container().oclIsKindOf(Node) then
+ log('IsNode')
+ else
+ log('IsEdge')
+ endif;
+ */
+
+ return res;
+}
+
+query View::doGetDecorationType(element : Element) : String{
+ return if self.container().oclIsKindOf(Node) then {
+ return if element.oclIsTypeOf(Stereotype) then
+ return switch {
+ case (self.type = 'Name') 'Stereotype_NameLabel';
+ case (self.type = 'AttributeCompartment') 'Stereotype_AttributeCompartment';
+ case (self.type = 'OperationCompartment') 'Stereotype_OperationCompartment';
+ }
+ elif element.oclIsTypeOf(Class) and not element.oclAsType(Class).isMetaclass() then //Class
+ return switch {
+ case (self.type = 'Name') 'Class_NameLabel';
+ case (self.type = 'OperationCompartment') 'Class_OperationCompartment';
+ case (self.type = 'AttributeCompartment') 'Class_AttributeCompartment';
+ }
+ elif element.oclIsTypeOf(Class) and element.oclAsType(Class).isMetaclass() then //Metaclass
+ return switch {
+ case (self.type = 'Name') 'Class_MetaclassNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Constraint) then
+ return switch {
+ case (self.type = 'Name') 'Constraint_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Model) then
+ return switch {
+ case (self.type = 'Name') 'Model_NameLabel';
+ case (self.type = 'StructureCompartment') 'Model_PackagedElementCompartment';
+ }
+ elif element.oclIsTypeOf(Profile) then
+ return switch {
+
+ case (self.type = 'StructureCompartment') 'Profile_PackagedElementCompartment';
+ }
+ elif element.oclIsTypeOf(Package) then
+ return switch {
+ case (self.type = 'Name') 'Package_NameLabel';
+ case (self.type = 'PackageContents') 'Package_PackagedElementCompartment';
+ }
+ elif element.oclIsTypeOf(Enumeration) then
+ return switch {
+ case (self.type = 'Name') 'Enumeration_NameLabel';
+ case (self.type = 'EnumerationCompartment') 'Enumeration_LiteralCompartment';
+ }
+ elif element.oclIsTypeOf(PrimitiveType) then
+ return switch {
+ case (self.type = 'Name') 'PrimitiveType_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(DataType) then
+ return switch {
+ case (self.type = 'Name') 'DataType_NameLabel';
+ case (self.type = 'AttributeCompartment') 'DataType_AttributeCompartment';
+ case (self.type = 'OperationCompartment') 'DataType_OperationCompartment'; //TODO: Disable?
+ }
+ elif element.oclIsTypeOf(Diagram) then
+ return switch {
+ case (self.type = 'Name') 'Diagram_NameLabel';
+
+ }
+ endif
+ } else {
+ return if element.oclIsTypeOf(Association) then
+ return switch {
+ case (self.type='Name') 'Association_NameLabel';
+ case (self.type = 'KindLabel') 'Association_StereotypeLabel';
+ case (self.type = 'NameLabel') 'Association_NameLabel';
+
+
+ case (self.type = 'FromMultiplicityLabel') 'Association_SourceMultiplicityLabel';
+ case (self.type = 'ToMultiplicityLabel') 'Association_TargetMultiplicityLabel';
+ }
+ elif element.oclIsTypeOf(Generalization) then
+ return switch {
+
+ case (self.type = 'KindLabel') 'Generalization_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Dependency) then
+ return switch {
+ case (self.type='Name') 'Dependency_NameLabel';
+ case (self.type = 'NameLabel') 'Dependency_NameLabel';
+ case (self.type = 'KindLabel') 'Dependency_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(ElementImport) then
+ return switch {
+
+
+ case (self.type = 'KindLabel') 'ElementImport_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(PackageImport) then
+ return switch {
+
+ case (self.type = 'KindLabel') 'PackageImport_StereotypeLabel';
+ }
+ endif
+ } endif;
+}
+
+
+query View::getEdgeType(element : Element) : String {
+ return
+ if self.type = 'Reference' then '' /* Context Links handled separately */
+ elif element.oclIsTypeOf(Extension) then 'Extension_Edge'
+ elif element.oclIsTypeOf(Association) then 'Association_Edge'
+ elif element.oclIsTypeOf(ProfileApplication) then 'ProfileApplication_Edge'
+ elif element.oclIsTypeOf(Association) then 'Association_BranchEdge'
+ elif element.oclIsTypeOf(Generalization) then 'Generalization_Edge'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_Edge'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_BranchEdge'
+ elif element.oclIsTypeOf(ElementImport) then 'ElementImport_Edge'
+ elif element.oclIsTypeOf(PackageImport) then 'PackageImport_Edge'
+ else self.fail()
+ endif;
+}
+
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAProfilesToPapyrus.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAProfilesToPapyrus.qvto
new file mode 100644
index 0000000..4a25aa1
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAProfilesToPapyrus.qvto
@@ -0,0 +1,188 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+import org.eclipse.papyrus.interoperability.common.utils.UI;
+import org.eclipse.papyrus.interoperability.rsa.ProfileBaseHelper;
+import org.eclipse.papyrus.interoperability.common.blackboxes.emf.EMFResource;
+import libraries.EclipseUI;
+
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype defaultProfile "strict" uses 'http://www.eclipse.org/papyrus/profile/default';
+modeltype documentation "strict" uses 'http://www.eclipse.org/papyrus/documentation';
+modeltype validation "strict" uses 'http://www.eclipse.org/papyrus/dsmlvalidation';
+modeltype profileBase "strict" uses 'http://www.eclipse.org/papyrus/profile/profilebase';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSAProfilesToPapyrus(inout semantics : uml, inout notationModel : notation, in papyrusProfiles : /* Profiles + EObjects (Stereotype applications) */ uml, in profileDefinitions : /* EPackage */ ecore, in param : config);
+
+property validationURI : String = 'http://www.eclipse.org/papyrus/dsmlvalidation';
+
+property documentationURI : String = 'http://www.eclipse.org/papyrus/documentation';
+
+property profileBaseURI : String = 'pathmap://UML2_MSL_PROFILES/ProfileBase.epx';
+
+property defaultProfileURI : String = 'pathmap://UML2_MSL_PROFILES/Default.epx';
+
+main() {
+ semantics.objectsOfType(defaultProfile::URL).map toHyperlink();
+
+ semantics.objectsOfType(ProfileApplication).map toPapyrusValidationProfile();
+ semantics.objectsOfType(profileBase::ProfileConstraint).map toValidationRule();
+
+ semantics.objectsOfType(ProfileApplication).map toPapyrusDocumentationProfile();
+ semantics.objectsOfType(defaultProfile::Documentation).map toDocumentation();
+
+ if param.rootObjects()[Config]->any(true).removeUnmappedProfilesAndStereotypes then {
+
+ //unapply deployment profile
+
+ semantics.objectsOfType(ProfileApplication).map removeDeploymentProfile();
+
+ //remove DefaultLanguage stereotype
+
+ semantics.rootObjects()[DefaultLanguage].map delete();
+
+ } endif;
+}
+
+mapping ProfileApplication::removeDeploymentProfile() when {
+ self.appliedProfile.oclAsType(EObject).getURI().startsWith('pathmap://UML2_MSL_PROFILES/Deployment.epx');
+}{
+ self.oclAsType(EObject).forceDelete(false);
+}
+
+mapping DefaultLanguage::delete() {
+ //semantics.removeElement(self);
+}
+
+query ProfileApplication::getDefinitionAnnotation() : EAnnotation {
+ return self.getEAnnotation('http://www.eclipse.org/uml2/2.0.0/UML');
+}
+
+query ProfileApplication::getDefinition() : EPackage {
+ return self.getDefinitionAnnotation()._references->any(oclIsKindOf(EPackage)).oclAsType(EPackage);
+}
+
+/** Profile Base -> Validation **/
+
+mapping inout ProfileApplication::toPapyrusValidationProfile() when {
+ self.getDefinition().oclAsType(EObject).getURI().startsWith(profileBaseURI);
+}{
+ self.appliedProfile := getValidationProfile();
+ self.getDefinitionAnnotation()._references := profileDefinitions.rootObjects()[EPackage]->any(nsURI = validationURI).oclAsType(EObject);
+
+ self.eAnnotations := self.getDefinitionAnnotation(); //Remove all other annotations
+}
+
+mapping ProfileConstraint::toValidationRule() : ValidationRule {
+ result.severity := self.severity.toSeverityCode();
+ result.mode := self.evaluationMode.toEvaluationMode();
+ result.isEnabledByDefault := true;
+ result.base_Constraint := self.base_Constraint;
+ result.statusCode := self.severity.toStatusCode();
+ result.message := self.getConstraintMessage();
+ //result.description := null;
+ //result.target := null;
+ //result._class := null;
+ //result.id := null;
+
+ //semantics.removeElement(self); //To be deleted programatically
+}
+
+query defaultProfile::Severity::toSeverityCode() : validation::Severity{
+ return switch {
+ case (self = defaultProfile::Severity::error) validation::Severity::ERROR;
+ case (self = defaultProfile::Severity::warning) validation::Severity::WARNING;
+ case (self = defaultProfile::Severity::info) validation::Severity::INFO;
+ };
+
+}
+
+query defaultProfile::Mode::toEvaluationMode() : validation::Mode {
+ return if self = defaultProfile::Mode::batch then validation::Mode::Batch else validation::Mode::Live endif;
+}
+
+query defaultProfile::Severity::toStatusCode() : Integer {
+ return switch {
+ case (self = defaultProfile::Severity::error) 3;
+ case (self = defaultProfile::Severity::warning) 2;
+ case (self = defaultProfile::Severity::info) 1;
+ };
+}
+
+query getValidationProfile() : Profile {
+ return papyrusProfiles.rootObjects()[Profile]->any(URI = validationURI);
+}
+
+/** Default Profile -> Documentation **/
+
+mapping inout ProfileApplication::toPapyrusDocumentationProfile() when {
+ self.getDefinition().oclAsType(EObject).getURI().startsWith(defaultProfileURI);
+}{
+ self.appliedProfile := getDocumentationProfile();
+ self.getDefinitionAnnotation()._references := profileDefinitions.rootObjects()[EPackage]->any(nsURI = documentationURI).oclAsType(EObject);
+
+ self.eAnnotations := self.getDefinitionAnnotation(); //Remove all other annotations
+}
+
+mapping defaultProfile::Documentation::toDocumentation() : documentation::Documentation {
+ result.base_Comment := self.base_Comment;
+
+ //semantics.removeElement(self);
+}
+
+query getDocumentationProfile() : Profile {
+ return papyrusProfiles.objectsOfType(Profile)->any(URI = documentationURI); //DocumentationProfile is not a root profile
+}
+
+/** Default Profile : Link/URL -> Hyperlink **/
+
+mapping inout URL::toHyperlink() {
+ var comment := self.base_Comment;
+
+ var commentDisplays := notationModel.objectsOfType(Shape)->select(element = comment.oclAsType(EObject)); //All views representing the comment
+
+ var label := self.displayName;
+ var url := comment.body;
+
+ /** In RSA, the body holds the URL, and the Stereotype holds the label */
+ /** In Papyrus, the body holds the label, and the EAnnotation holds the URL */
+
+ comment.body := label;
+
+ commentDisplays.map createHyperlinkAnnotation(url);
+
+ end {
+ //semantics.removeElement(self);
+ }
+}
+
+mapping Shape::createHyperlinkAnnotation(url : String) : EAnnotation {
+ result.eModelElement := self;
+ result.source := 'PapyrusHyperLink__web';
+
+ result.details += object EStringToStringMapEntry {
+ key := "tooltip_text";
+ value := url;
+ };
+
+ result.details += object EStringToStringMapEntry {
+ key := "link";
+ value := url;
+ };
+
+ result.details += object EStringToStringMapEntry {
+ key := "is_default_navigation";
+ value := "true";
+ };
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSASequenceDiagram.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSASequenceDiagram.qvto
new file mode 100644
index 0000000..1f5f112
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSASequenceDiagram.qvto
@@ -0,0 +1,381 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 465656
+ *****************************************************************************/
+import RSAToPapyrus;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSASequenceDiagram(inout semantics : uml, inout graphics : notation, out di : sash, in param : config);
+
+main() {
+ semantics.rootObjects()[uml::Element]->map toOwnedDiagrams();
+}
+
+query View::getDiagramType() : String{
+ return 'PapyrusUMLSequenceDiagram';
+}
+
+mapping notation::Diagram::generateDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ self.type = 'Sequence'
+}{
+ end {
+ graphics.objectsOfType(Shape)->select(type = 'BehaviorExecutionSpecification_Shape').map fixExecutionSpecification();
+ graphics.objectsOfType(Shape)->select(type = 'Lifeline_Shape').map fixLifelineHeight();
+ graphics.objectsOfType(Shape)->select(type = 'StateInvariant_Shape').map fixStateInvariant();
+
+ graphics.objectsOfType(Shape)->select(type = 'Comment_Shape').map addCommentDecoration();
+ graphics.objectsOfType(Shape)->select(type = 'Constraint_Shape').map addConstraintDecoration();
+ }
+}
+
+mapping inout Shape::addCommentDecoration() when {
+ self.type = 'Comment_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Comment_BodyLabel'; //Comment body
+ }
+
+}
+
+mapping inout Shape::addConstraintDecoration() when {
+ self.type = 'Constraint_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Constraint_BodyLabel'; //Constraint specification
+ }
+
+}
+
+mapping inout Shape::fixLifelineHeight() {
+ self.layoutConstraint.oclAsType(Location).y := 10;
+}
+
+mapping inout Shape::fixExecutionSpecification() {
+ self.children := self.children->including(object DecorationNode {
+ type := 'BehaviorExecutionSpecification_Behavior';
+ layoutConstraint := object Location {
+ x := 18;
+ y := 18;
+ }
+ });
+
+ var lifeline := semantics.objectsOfType(Lifeline)->any(ll | ll.coveredBy->includes(self.element.oclAsType(InteractionFragment)));
+ var lifelineShape := graphics.objectsOfType(Shape)->any(element = lifeline.oclAsType(EObject));
+ lifelineShape.children := lifelineShape.children->including(self);
+ var lifelineWidth := lifelineShape.layoutConstraint.oclAsType(Bounds).width;
+
+ var speficationBounds := self.layoutConstraint.oclAsType(Bounds);
+ speficationBounds.x := ((lifelineWidth - 15)/2).round();
+
+ /* Cannot be selected in Papyrus when it is too small */
+ var minHeight := 50;
+ if speficationBounds.height < minHeight then
+ speficationBounds.height := minHeight
+ endif;
+}
+
+mapping inout Shape::fixStateInvariant() {
+
+ var lifeline := semantics.objectsOfType(Lifeline)->any(ll | ll.coveredBy->includes(self.element.oclAsType(StateInvariant)));
+ var lifelineShape := graphics.objectsOfType(Shape)->any(element = lifeline.oclAsType(EObject));
+
+ lifelineShape.children := lifelineShape.children->including(self);
+}
+
+mapping Node::toNode() : Node disjuncts
+ UMLShape::toPapyrusShape,
+ UMLShapeCompartment::toStructureCompartment,
+ BasicSemanticCompartment::toListCompartment,
+ BasicDecorationNode::toConnectorLabel,
+ BasicDecorationNode::toLabel
+ //TODO: Disjunct nodes mapping
+;
+
+mapping Edge::toEdge() : Edge disjuncts
+ UMLConnector::toPapyrusConnector
+ //TODO: Disjunct edges mapping
+;
+
+mapping UMLShapeCompartment::toStructureCompartment() : DecorationNode inherits UMLShapeCompartment::toAbstractStructureCompartment when {
+ (self.type = 'StructureCompartment' or
+ self.type = 'PackageContents' or
+ self.type = 'interaction_compartment' or
+ self.type.oclIsUndefined() or self.type = '')
+ and not self.getType().oclIsUndefined();
+}{
+
+}
+
+
+/***** Nodes **********/
+
+mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when {
+ self.type = '' and not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(ActionExecutionSpecification)or
+ self.element.oclIsTypeOf(BehaviorExecutionSpecification)or
+ self.element.oclIsTypeOf(TimeObservation)or
+ self.element.oclIsTypeOf(InteractionUse)or
+ self.element.oclIsTypeOf(CombinedFragment)or
+ self.element.oclIsTypeOf(Comment)or
+ self.element.oclIsTypeOf(Lifeline)or
+ self.element.oclIsTypeOf(InteractionOperand)or
+ self.element.oclIsTypeOf(TimeConstraint)or
+ self.element.oclIsTypeOf(StateInvariant)or
+ self.element.oclIsTypeOf(CombinedFragment)or
+ self.element.oclIsTypeOf(Continuation)or
+ self.element.oclIsTypeOf(Interaction)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(DurationConstraint)or
+ self.element.oclIsTypeOf(DurationObservation)or
+ self.element.oclIsTypeOf(ConsiderIgnoreFragment)or
+ self.element.oclIsTypeOf(DurationConstraint)or
+ self.element.oclIsTypeOf(DestructionOccurrenceSpecification)
+
+ )
+}{}
+
+
+/****** Connector Labels ******/
+
+mapping BasicDecorationNode::toConnectorLabel() : DecorationNode inherits Node::toPapyrusConnectorLabel when {
+ not self.getType().oclIsUndefined() and (
+ self.type = 'ToMultiplicityLabel' or
+ self.type = 'ToRoleLabel' or
+ self.type = 'FromMultiplicityLabel' or
+ self.type = 'FromRoleLabel' or
+ self.type = 'NameLabel' or
+ self.type = 'KindLabel'
+ )
+}{
+
+}
+
+/****** Compartments *******/
+
+mapping BasicDecorationNode::toLabel() : DecorationNode inherits Node::toPapyrusNode when {
+ not self.getType().oclIsUndefined() and
+ self.element.oclIsKindOf(uml::NamedElement) and
+ self.type = 'Name'
+}{
+
+}
+
+mapping BasicSemanticCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment') and not self.getType().oclIsUndefined()
+}{
+ result.children := self.findElement().map toContents(self);
+}
+
+mapping Element::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ CombinedFragment::toContents
+;
+
+mapping CombinedFragment::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ CombinedFragment::toCombinedFragmentCompartmentContents
+;
+
+mapping CombinedFragment::toCombinedFragmentCompartmentContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'Compartment';
+}{
+
+}
+
+
+
+
+
+
+
+/******* Edges ********/
+
+
+mapping UMLConnector::toPapyrusConnector() : Connector inherits Connector::toPapyrusConnector when {
+ self.type = '' and
+ not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(Message)or
+ self.element.oclIsTypeOf(Message)or
+ self.element.oclIsTypeOf(Message)or
+ self.element.oclIsTypeOf(Message)or
+ self.element.oclIsTypeOf(Message)or
+ self.element.oclIsTypeOf(Message)or
+ self.element.oclIsTypeOf(Message)or
+ self.element.oclIsTypeOf(GeneralOrdering)
+ )
+}{
+ result.styles := self.map toFontStyle();
+}
+
+/****** Element Type queries ******/
+
+query View::getNodeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(TimeObservation) then 'TimeObservation_Shape'
+ elif element.oclIsTypeOf(InteractionUse) then 'InteractionUse_Shape'
+ elif element.oclIsTypeOf(CombinedFragment) then 'CombinedFragment_Shape'
+ elif element.oclIsTypeOf(CombinedFragment) then 'CombinedFragment_CoRegionShape'
+ elif element.oclIsTypeOf(Comment) then 'Comment_Shape'
+ elif element.oclIsTypeOf(Lifeline) then 'Lifeline_Shape'
+ elif element.oclIsTypeOf(InteractionOperand) then 'InteractionOperand_Shape'
+ elif element.oclIsTypeOf(TimeConstraint) then 'TimeConstraint_Shape'
+ elif element.oclIsTypeOf(StateInvariant) then 'StateInvariant_Shape'
+ elif element.oclIsTypeOf(Continuation) then 'Continuation_Shape'
+ elif element.oclIsTypeOf(Interaction) then 'Interaction_Shape'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_Shape'
+ elif element.oclIsTypeOf(DurationConstraint) then 'DurationConstraint_Shape'
+ elif element.oclIsTypeOf(DurationObservation) then 'DurationObservation_Shape'
+ elif element.oclIsTypeOf(ConsiderIgnoreFragment) then 'ConsiderIgnoreFragment_Shape'
+ elif element.oclIsTypeOf(ActionExecutionSpecification) then 'ActionExecutionSpecification_Shape'
+ elif element.oclIsTypeOf(DurationConstraint) then 'DurationConstraint_Shape_CN'
+ elif element.oclIsTypeOf(DestructionOccurrenceSpecification) then 'DestructionOccurrenceSpecification_Shape'
+ elif element.oclIsTypeOf(BehaviorExecutionSpecification) then 'BehaviorExecutionSpecification_Shape'
+ else self.fail()
+ endif;
+}
+
+
+query View::getDecorationType(element : Element) : String{
+ var res := self.doGetDecorationType(element);
+
+ /*log('Get papyrus ID for'+ self.element.eClass().name+', '+self.type);
+
+ log(res);
+
+ if self.container().oclIsKindOf(Node) then
+ log('IsNode')
+ else
+ log('IsEdge')
+ endif;*/
+
+ return res;
+
+}
+
+query View::doGetDecorationType(element : Element) : String{
+ return if self.container().oclIsKindOf(Node) then {
+ return if element.oclIsTypeOf(InteractionUse) then
+ return switch {
+ case (self.type = 'Name') 'InteractionUse_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Lifeline) then
+ return switch {
+ case (self.type = 'Name') 'Lifeline_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(StateInvariant) then
+ return switch {
+ case (self.type = 'Name') 'StateInvariant_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(InteractionOperand) then
+ return switch {
+
+ case (self.type.oclIsUndefined() or self.type = '') 'CombinedFragment_SubfragmentCompartment';
+ }
+ elif element.oclIsTypeOf(Continuation) then
+ return switch {
+ case (self.type = 'Name') 'Continuation_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Interaction) then
+ return switch {
+ case (self.type = 'Name') 'Interaction_NameLabel';
+ case (self.type = 'interaction_compartment') 'Interaction_SubfragmentCompartment';
+ }
+ elif element.oclIsTypeOf(Constraint) then
+ return switch {
+ case (self.type = 'Name') 'Constraint_NameLabel';
+
+ }
+ endif
+ } else {
+ return if element.oclIsTypeOf(Message) and (element.oclIsKindOf(uml::InteractionFragment)) and (element.oclIsKindOf(uml::InteractionFragment) or element.oclIsKindOf(uml::Lifeline)) then
+ return switch {
+ case (self.type='Name') 'Message_SynchNameLabel';
+ case (self.type = 'NameLabel') 'Message_SynchNameLabel';
+ case (self.type = 'KindLabel') 'Message_SynchStereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Message) and ((element.oclIsKindOf(uml::Lifeline) or element.oclIsKindOf(uml::InteractionFragment) or element.oclIsKindOf(uml::Gate))) and true then
+ return switch {
+
+ case (self.type = 'NameLabel') 'Message_AsynchNameLabel';
+ case (self.type = 'KindLabel') 'Message_AsynchStereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Message) and (element.oclIsKindOf(uml::InteractionFragment)) and ((element.oclIsKindOf(uml::Lifeline) or element.oclIsKindOf(uml::InteractionFragment) or element.oclIsKindOf(uml::Gate))) then
+ return switch {
+
+ case (self.type = 'NameLabel') 'Message_ReplyNameLabel';
+ case (self.type = 'KindLabel') 'Message_ReplyStereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Message) and (element.oclIsKindOf(uml::InteractionFragment) or element.oclIsKindOf(uml::Lifeline)) and (element.oclIsKindOf(uml::Lifeline)) then
+ return switch {
+
+ case (self.type = 'NameLabel') 'Message_CreateNameLabel';
+ case (self.type = 'KindLabel') 'Message_CreateStereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Message) and (element.oclIsKindOf(uml::InteractionFragment) or element.oclIsKindOf(uml::Lifeline)) and (element.oclIsKindOf(uml::DestructionOccurrenceSpecification) or element.oclIsKindOf(uml::Lifeline)) then
+ return switch {
+
+ case (self.type = 'NameLabel') 'Message_DeleteNameLabel';
+ case (self.type = 'KindLabel') 'Message_DeleteStereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Message) and ((element.oclIsKindOf(uml::Lifeline) or element.oclIsKindOf(uml::InteractionFragment) or element.oclIsKindOf(uml::Gate))) and (element.oclIsKindOf(uml::Interaction)) then
+ return switch {
+
+ case (self.type = 'NameLabel') 'Message_LostNameLabel';
+ case (self.type = 'KindLabel') 'Message_LostStereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(Message) and (element.oclIsKindOf(uml::Interaction)) and ((element.oclIsKindOf(uml::Lifeline) or element.oclIsKindOf(uml::InteractionFragment) or element.oclIsKindOf(uml::Gate))) then
+ return switch {
+
+ case (self.type = 'NameLabel') 'Message_FoundNameLabel';
+ case (self.type = 'KindLabel') 'Message_FoundStereotypeLabel';
+ }
+
+ elif element.oclIsTypeOf(GeneralOrdering) then
+ return switch {
+
+ case (self.type = 'KindLabel') 'GeneralOrdering_StereotypeLabel';
+ }
+
+ endif
+ } endif;
+}
+
+
+query View::getEdgeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(Message) then 'Message_SynchEdge'
+ elif element.oclIsTypeOf(Message) then 'Message_AsynchEdge'
+ elif element.oclIsTypeOf(Message) then 'Message_ReplyEdge'
+ elif element.oclIsTypeOf(Message) then 'Message_CreateEdge'
+ elif element.oclIsTypeOf(Message) then 'Message_DeleteEdge'
+ elif element.oclIsTypeOf(Message) then 'Message_LostEdge'
+ elif element.oclIsTypeOf(Message) then 'Message_FoundEdge'
+ elif element.oclIsTypeOf(GeneralOrdering) then 'GeneralOrdering_Edge'
+ else self.fail()
+ endif;
+}
+
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAStateMachineDiagram.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAStateMachineDiagram.qvto
new file mode 100644
index 0000000..17ffb85
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAStateMachineDiagram.qvto
@@ -0,0 +1,394 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 465656
+ *****************************************************************************/
+import RSAToPapyrus;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSAStateMachineDiagram(inout semantics : uml, inout graphics : notation, out di : sash, in param : config);
+
+main() {
+ semantics.rootObjects()[uml::Element]->map toOwnedDiagrams();
+}
+
+query View::getDiagramType() : String{
+ return 'PapyrusUMLStateMachineDiagram';
+}
+
+mapping notation::Diagram::generateDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ self.type = 'Statechart'
+}{
+ end {
+ graphics.objectsOfType(DecorationNode)->select(type = 'Region_SubvertexCompartment').map addInRegion();
+ graphics.objectsOfType(Shape)->select(type = 'StateMachine_Shape').map createIntermediateCompartment();
+ graphics.objectsOfType(Shape)->select(type = 'State_Shape').map createStructureCompartment();
+ graphics.objectsOfType(DecorationNode)->select(type = 'StateMachine_NameLabel').map addLayout();
+ graphics.objectsOfType(DecorationNode)->select(type = 'State_NameLabel').map fixLayout();
+
+ graphics.objectsOfType(Shape)->select(type='Comment_Shape').map addCommentDecoration();
+ graphics.objectsOfType(Shape)->select(type = 'Constraint_Shape').map addConstraintDecoration();
+ }
+}
+
+mapping inout Shape::createIntermediateCompartment() {
+ var compartment := object DecorationNode {
+ type := 'StateMachine_RegionCompartment';
+ layoutConstraint := object Bounds{}
+ };
+
+ compartment.children := self.children->select(type = 'Region_Shape');
+
+ children := children->insertAt(2, compartment); /* Required for layout: the Structure Compartment of the Region must be in 2nd position */
+}
+
+mapping inout DecorationNode::addInRegion() {
+ var currentParent := self.oclAsType(EObject).eContainer();
+ var currentBounds := self.layoutConstraint.oclAsType(Bounds);
+
+ var region := object Shape {
+ type := 'Region_Shape';
+ layoutConstraint := object Bounds{
+ x := currentBounds.x;
+ y := currentBounds.y;
+ };
+ element := self.element;
+ children := self;
+ eAnnotations := object EAnnotation {
+ source := "RegionAnnotationKey";
+ details := object EStringToStringMapEntry{
+ key := "RegionZoneKey";
+ value := 'B';
+ }
+ }
+ };
+
+ if self.layoutConstraint.oclIsUndefined() then self.layoutConstraint := object Bounds{} endif;
+ self.styles := self.styles->reject(oclIsTypeOf(TitleStyle));
+
+ currentParent.oclAsType(View).children += region;
+}
+
+mapping inout Shape::createStructureCompartment() when {
+ not self.children->exists(type = 'State_RegionCompartment')
+}{
+ var compartment := object DecorationNode {
+ type := 'State_RegionCompartment';
+ visible := self.children->exists(type='Region_Shape');
+ layoutConstraint := object Bounds{};
+ };
+
+ compartment.children += children->select(type = 'Region_Shape');
+ children := children->insertAt(2, compartment);
+}
+
+mapping inout DecorationNode::addLayout() {
+ if self.layoutConstraint.oclIsUndefined() then self.layoutConstraint := object Bounds{} endif;
+}
+
+mapping inout DecorationNode::fixLayout(){
+ var bounds := if self.layoutConstraint.oclIsUndefined() then object Bounds{} else self.layoutConstraint.oclAsType(Bounds) endif;
+ self.layoutConstraint := bounds;
+
+ if bounds.height < 20 then bounds.height := 20 endif;
+}
+
+mapping Node::toNode() : Node disjuncts
+ UMLShape::toPapyrusShape,
+ UMLShapeCompartment::toStructureCompartment,
+ BasicSemanticCompartment::toListCompartment,
+ BasicDecorationNode::toConnectorLabel,
+ BasicDecorationNode::toLabel
+ //TODO: Disjunct nodes mapping
+;
+
+mapping Edge::toEdge() : Edge disjuncts
+ UMLConnector::toCommentLink,
+ UMLConnector::toConstraintLink,
+ UMLConnector::toPapyrusConnector
+ //TODO: Disjunct edges mapping
+;
+
+mapping UMLShapeCompartment::toStructureCompartment() : DecorationNode inherits UMLShapeCompartment::toAbstractStructureCompartment when {
+ not self.getType().oclIsUndefined();
+}{
+
+}
+
+mapping inout Shape::addCommentDecoration() when {
+ self.type = 'Comment_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Comment_BodyLabel';
+ }
+
+}
+
+mapping inout Shape::addConstraintDecoration() when {
+ self.type = 'Constraint_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Constraint_BodyLabel'; //Constraint specification
+ }
+
+}
+
+/***** Nodes **********/
+
+mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when {
+ not self.getType().oclIsUndefined()
+}{
+
+}
+
+
+/****** Connector Labels ******/
+
+mapping BasicDecorationNode::toConnectorLabel() : DecorationNode inherits Node::toPapyrusConnectorLabel when {
+ not self.getType().oclIsUndefined() and (
+ self.type = 'ToMultiplicityLabel' or
+ self.type = 'ToRoleLabel' or
+ self.type = 'FromMultiplicityLabel' or
+ self.type = 'FromRoleLabel' or
+ self.type = 'NameLabel' or
+ self.type = 'KindLabel'
+ )
+}{
+
+}
+
+/****** Compartments *******/
+
+mapping BasicDecorationNode::toLabel() : DecorationNode inherits Node::toPapyrusNode when {
+ not self.getType().oclIsUndefined() and
+ self.element.oclIsKindOf(uml::NamedElement) and
+ self.type = 'Name'
+}{
+
+}
+
+mapping BasicSemanticCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment') and not self.getType().oclIsUndefined()
+}{
+
+}
+
+
+mapping uml::State::fillTransition(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='';
+}{
+ init {
+ result := self.incoming->selectByKind(Transition).map toTransitionIn(node)->asSequence();
+ }
+}
+
+mapping uml::State::fillBehavior(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='';
+}{
+ init {
+ result := self.entry->selectByKind(Behavior).map toBehaviorIn(node)->asSequence();
+ }
+}
+
+mapping Transition::toTransitionIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Transition_InternalTransitionLabel';
+}
+
+mapping Behavior::toBehaviorIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Behavior_EntryBehaviorLabel';
+}
+
+
+
+/******* Edges ********/
+
+
+mapping UMLConnector::toPapyrusConnector() : Connector inherits Connector::toPapyrusConnector when {
+ self.type = '' and
+ not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(Transition)or
+ self.element.oclIsTypeOf(Generalization)
+ )
+}{
+ result.styles := self.map toFontStyle();
+}
+
+
+mapping UMLConnector::toCommentLink() : Connector inherits Connector::toCommentLink when{
+ self.type='Reference'
+}{
+ result.type :='Comment_AnnotatedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+mapping UMLConnector::toConstraintLink() : Connector inherits Connector::toPapyrusConnector when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Constraint) or
+ self.target.element.oclIsKindOf(Constraint)
+ )
+}{
+ result.type :='Constraint_ConstrainedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+
+/****** Element Type queries ******/
+
+query View::getNodeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(Comment) then 'Comment_Shape'
+ elif element.oclIsTypeOf(FinalState) then 'FinalState_Shape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::join then 'Pseudostate_JoinShape'
+ elif element.oclIsTypeOf(State) then 'State_Shape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::shallowHistory then 'Pseudostate_ShallowHistoryShape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::terminate then 'Pseudostate_TerminateShape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::choice then 'Pseudostate_ChoiceShape'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_Shape'
+ elif element.oclIsTypeOf(StateMachine) then 'StateMachine_Shape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::fork then 'Pseudostate_ForkShape'
+ elif element.oclIsTypeOf(Region) then 'Region_Shape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::junction then 'Pseudostate_JunctionShape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::deepHistory then 'Pseudostate_DeepHistoryShape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::initial then 'Pseudostate_InitialShape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::entryPoint then 'Pseudostate_EntryPointShape'
+ elif element.oclIsTypeOf(Pseudostate) and element.oclAsType(Pseudostate).kind = PseudostateKind::exitPoint then 'Pseudostate_ExitPointShape'
+ elif element.oclIsTypeOf(ConnectionPointReference) then 'ConnectionPointReference_Shape'
+ else self.fail()
+ endif;
+}
+
+
+query View::getDecorationType(element : Element) : String{
+ var res := self.doGetDecorationType(element);
+
+
+ /*log('Get papyrus ID for'+ self.element.eClass().name+', '+self.type);
+
+ log(res);
+
+ if self.container().oclIsKindOf(Node) then
+ log('IsNode')
+ else
+ log('IsEdge')
+ endif;*/
+
+
+ return res;
+}
+
+query View::doGetDecorationType(element : Element) : String{
+ return if self.container().oclIsKindOf(Node) then {
+ return if element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_ChoiceFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_ExitPointFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_ShallowHistoryFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_JoinFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_InitialFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Region) then
+ return switch {
+
+ case (self.type = 'Region' or self.type = '') 'Region_SubvertexCompartment';
+ }
+ elif element.oclIsTypeOf(ConnectionPointReference) then
+ return switch {
+ case (self.type = 'Name') 'ConnectionPointReference_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(State) then
+ return switch {
+ case (self.type = 'Name') 'State_NameLabel';
+ }
+ elif element.oclIsTypeOf(FinalState) then
+ return switch {
+ case (self.type = 'Name') 'FinalState_FloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_DeepHistoryFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_TerminateFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_ForkFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_EntryPointFloatingNameLabel';
+
+ }
+ elif element.oclIsTypeOf(StateMachine) then
+ return switch {
+ case (self.type = 'Name') 'StateMachine_NameLabel';
+ case (self.type = 'StructureCompartment') 'StateMachine_RegionCompartment';
+ }
+ elif element.oclIsTypeOf(Pseudostate) then
+ return switch {
+ case (self.type = 'Name') 'Pseudostate_JunctionFloatingNameLabel';
+
+ }
+ endif
+ } else {
+ return if element.oclIsTypeOf(Transition) then
+ return switch {
+ case (self.type='Name') 'Transition_NameLabel';
+ case (self.type = 'NameLabel') 'Transition_NameLabel';
+
+
+ }
+ endif
+ } endif;
+}
+
+
+query View::getEdgeType(element : Element) : String {
+ return
+ if self.type = 'Reference' then '' /* Constraint/Comment links handled separately */
+ elif element.oclIsTypeOf(Transition) then 'Transition_Edge'
+ elif element.oclIsTypeOf(Generalization) then 'Generalization_Edge'
+ else self.fail()
+ endif;
+}
+
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAStructureDiagram.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAStructureDiagram.qvto
new file mode 100644
index 0000000..66a7603
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAStructureDiagram.qvto
@@ -0,0 +1,890 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bugs 461980, 497841, 498282, 465656
+ * Asma Smaoui - bug 507860
+ *****************************************************************************/
+import RSAToPapyrus;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSAStructureDiagram(inout semantics : uml, inout graphics : notation, out di : sash, in param : config);
+
+main() {
+ semantics.rootObjects()[uml::Element]->map toOwnedDiagrams();
+}
+
+query View::getDiagramType() : String{
+ return 'CompositeStructure';
+}
+
+mapping notation::Diagram::generateDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ self.type = 'Structure'
+}{
+ init {
+
+ }
+ end {
+ graphics.objectsOfType(Shape)->select(type = 'Comment_Shape').map addCommentDecoration();
+ graphics.objectsOfType(Shape)->select(type = 'Constraint_Shape').map addConstraintDecoration();
+ }
+}
+
+
+mapping inout Shape::addCommentDecoration() when {
+ self.type = 'Comment_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Comment_BodyLabel'; //Comment body
+ }
+
+}
+
+mapping inout Shape::addConstraintDecoration() when {
+ self.type = 'Constraint_Shape' and self.diagram.type = self.getDiagramType()
+} {
+
+ self.children += object DecorationNode{
+ type := 'Constraint_BodyLabel'; //Constraint specification
+ }
+}
+
+
+mapping Node::toNode() : Node disjuncts
+ UMLShape::toPapyrusShape,
+ UMLShapeCompartment::toStructureCompartment,
+ BasicSemanticCompartment::toListCompartment,
+ BasicDecorationNode::toConnectorLabel,
+ BasicDecorationNode::toLabel
+ //TODO: Disjunct nodes mapping
+;
+
+mapping Edge::toEdge() : Edge disjuncts
+ UMLConnector::toCommentLink,
+ UMLConnector::toConstraintLink,
+ UMLConnector::toPapyrusConnector
+ //TODO: Disjunct edges mapping
+;
+
+mapping UMLShapeCompartment::toStructureCompartment() : DecorationNode inherits UMLShapeCompartment::toAbstractStructureCompartment when {
+ self.type = 'StructureCompartment' or self.type = 'PackageContents' and not self.getType().oclIsUndefined();
+}{
+
+}
+
+query Diagram::getDiagramFrame() : Node {
+ // Class_Shape denotes the structure frame in this diagram
+ return self.children->any(type = 'Class_Shape').oclAsType(notation::Node);
+}
+
+mapping inout Node::defaultFrameSize() {
+ var size : Size = self.layoutConstraint.oclAsType(notation::Size);
+ if (size.width = -1) then {
+ size.width := 600;
+ } endif;
+ if (size.height = -1) then {
+ size.height := 400;
+ } endif;
+}
+
+mapping inout Node::defaultSize(dWidth : Integer, dHeight : Integer) when {
+ self.layoutConstraint.oclIsKindOf(notation::Size) and
+ let size = self.layoutConstraint.oclAsType(notation::Size) in
+ size.width = -1 or size.height = -1
+} {
+ var size : Size = self.layoutConstraint.oclAsType(notation::Size);
+ if (size.width = -1) then {
+ size.width := dWidth;
+ } endif;
+ if (size.height = -1) then {
+ size.height := dHeight;
+ } endif;
+}
+
+/***** Nodes **********/
+
+mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when {
+ not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(DurationInterval)or
+ self.element.oclIsTypeOf(UseCase)or
+ (self.element.oclIsTypeOf(Port) and not(self.isSemiAutomatic()))or
+ self.element.oclIsTypeOf(LiteralInteger)or
+ self.element.oclIsTypeOf(Node)or
+ self.element.oclIsTypeOf(Class)or
+ self.element.oclIsTypeOf(Expression)or
+ self.element.oclIsTypeOf(IntervalConstraint)or
+ self.element.oclIsTypeOf(InteractionConstraint)or
+ self.element.oclIsTypeOf(TimeConstraint)or
+ self.element.oclIsTypeOf(OpaqueBehavior)or
+ self.element.oclIsTypeOf(Duration)or
+ self.element.oclIsTypeOf(Actor)or
+ self.element.oclIsTypeOf(TimeEvent)or
+ self.element.oclIsTypeOf(DurationConstraint)or
+ //self.element.oclIsTypeOf(Interface)or
+ self.element.oclIsTypeOf(SignalEvent)or
+ self.element.oclIsTypeOf(TimeExpression)or
+ self.element.oclIsTypeOf(Enumeration)or
+ self.element.oclIsTypeOf(OpaqueExpression)or
+ self.element.oclIsTypeOf(LiteralBoolean)or
+ self.element.oclIsTypeOf(AnyReceiveEvent)or
+ self.element.oclIsTypeOf(FunctionBehavior)or
+ self.element.oclIsTypeOf(LiteralUnlimitedNatural)or
+ self.element.oclIsTypeOf(Activity)or
+ self.element.oclIsTypeOf(Signal)or
+ self.element.oclIsTypeOf(Parameter)or
+ self.element.oclIsTypeOf(StringExpression)or
+ self.element.oclIsTypeOf(Interval)or
+ self.element.oclIsTypeOf(PrimitiveType)or
+ self.element.oclIsTypeOf(CollaborationUse)or
+ self.element.oclIsTypeOf(TimeObservation)or
+ self.element.oclIsTypeOf(DeploymentSpecification)or
+ self.element.oclIsTypeOf(StateMachine)or
+ self.element.oclIsTypeOf(Device)or
+ self.element.oclIsTypeOf(Comment)or
+ self.element.oclIsTypeOf(InformationItem)or
+ self.element.oclIsTypeOf(Artifact)or
+ self.element.oclIsTypeOf(Collaboration)or
+ self.element.oclIsTypeOf(ProtocolStateMachine)or
+ self.element.oclIsTypeOf(TimeInterval)or
+ self.element.oclIsTypeOf(CallEvent)or
+ self.element.oclIsTypeOf(InstanceValue)or
+ self.element.oclIsTypeOf(DurationObservation)or
+ self.element.oclIsTypeOf(Property)or
+ self.element.oclIsTypeOf(Constraint)or
+ self.element.oclIsTypeOf(ExecutionEnvironment)or
+ self.element.oclIsTypeOf(LiteralString)or
+ self.element.oclIsTypeOf(DataType)or
+ self.element.oclIsTypeOf(ChangeEvent)or
+ self.element.oclIsTypeOf(Component)or
+ self.element.oclIsTypeOf(LiteralNull)or
+ self.element.oclIsTypeOf(Interaction)
+ )
+}{
+
+ if (result.type = 'Property_Shape') {
+ // Handle default size of part shape
+ result.map defaultSize(160, 40);
+ }
+}
+
+/****** Adjustments to newly attached output views ******/
+
+mapping inout Node::adjustNode() disjuncts
+ Node::adjustStructureCompartment,
+ Node::adjustPort
+;
+
+mapping inout Node::adjustStructureCompartment() when {
+ self.type = 'Class_StructureCompartment'
+} {
+ // All ports, even internal ports, are children of the frame
+ self.children->select(type = 'Port_Shape').map hoistPortNode();
+}
+
+mapping inout Node::adjustPort() when {
+ self.type = 'Port_Shape'
+ and self.element.oclIsKindOf(Port)
+ and self.element.oclAsType(Port).isConjugated
+} {
+ // If the port is conjugated, we need to enable the default visualization,
+ // not the colour (if any) imported from RSA
+ self.unset('fillColor');
+}
+
+mapping inout Node::hoistPortNode() {
+ self.parentNode().parentNode().children += self;
+
+ // Add the height of the name label to account for the placement in the frame
+ // instead of the structure compartment
+ var loc = self.layoutConstraint.oclAsType(Location);
+ loc.y := loc.y + 20;
+}
+
+/****** Connector Labels ******/
+
+mapping BasicDecorationNode::toConnectorLabel() : DecorationNode inherits Node::toPapyrusConnectorLabel when {
+ not self.getType().oclIsUndefined() and (
+ self.type = 'ToMultiplicityLabel' or
+ self.type = 'ToRoleLabel' or
+ self.type = 'FromMultiplicityLabel' or
+ self.type = 'FromRoleLabel' or
+ self.type = 'NameLabel' or
+ self.type = 'KindLabel' or
+ self.type = 'PartTextCompartment' or
+ self.type = 'CommentBody'
+ )
+}{
+
+}
+
+/****** Compartments *******/
+
+mapping BasicDecorationNode::toLabel() : DecorationNode inherits Node::toPapyrusNodeLabel when {
+ not self.getType().oclIsUndefined() and
+ self.element.oclIsKindOf(uml::NamedElement) and
+ self.type = 'Name' or self.type = 'PartName' or self.type = 'PortName'
+}{
+// add the layoutconstraint fot the PortNamelabel
+ if (self.type = 'PortName'){
+ var thislayoutConstraint := result.layoutConstraint.oclAsType(Location);
+ thislayoutConstraint.x:=thislayoutConstraint.x -10; // to fit better RSA layout
+ thislayoutConstraint.y:=thislayoutConstraint.y -10; // to fit better RSA layout
+ result.layoutConstraint := thislayoutConstraint;
+ }
+}
+
+mapping BasicSemanticCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment') and not self.getType().oclIsUndefined()
+}{
+ result.children := self.findElement().map toContents(self);
+}
+
+mapping Element::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Enumeration::toContents,
+ DataType::toContents
+;
+
+mapping Enumeration::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ Enumeration::toliteralsContents
+;
+
+mapping DataType::toContents(node : BasicSemanticCompartment) : Sequence(Node) disjuncts
+ DataType::topropertiesContents,
+ DataType::tooperationsContents
+;
+
+mapping Enumeration::toliteralsContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'EnumerationLiteralCompartment';
+}{
+ init {
+ result := (self.map fillEnumerationLiteral(node))
+ }
+}
+
+mapping DataType::topropertiesContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'Compartment';
+}{
+ init {
+ result := (self.map fillProperty(node))
+ }
+}
+
+mapping DataType::tooperationsContents(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type = 'Compartment';
+}{
+ init {
+ result := (self.map fillOperation(node))
+ }
+}
+
+mapping uml::DataType::fillProperty(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='Compartment';
+}{
+ init {
+ result := self.ownedAttribute->selectByKind(Property).map toPropertyInDataType(node)->asSequence();
+ }
+}
+
+mapping uml::DataType::fillOperation(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='Compartment';
+}{
+ init {
+ result := self.ownedOperation->selectByKind(Operation).map toOperationInDataType(node)->asSequence();
+ }
+}
+
+
+
+mapping uml::Enumeration::fillEnumerationLiteral(node : BasicSemanticCompartment) : Sequence(Node) when {
+ node.type='EnumerationLiteralCompartment';
+}{
+ init {
+ result := self.ownedLiteral->selectByKind(EnumerationLiteral).map toEnumerationLiteralInEnumeration(node)->asSequence();
+ }
+}
+
+mapping UMLConnector::toCommentLink() : Connector inherits Connector::toCommentLink when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Comment) or
+ self.target.element.oclIsKindOf(Comment)
+ )
+}{
+ result.type :='Comment_AnnotatedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+mapping UMLConnector::toConstraintLink() : Connector inherits Connector::toPapyrusConnector when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Constraint) or
+ self.target.element.oclIsKindOf(Constraint)
+ )
+}{
+ result.type :='Constraint_ConstrainedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+mapping Property::toPropertyInDataType(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Property_AttributeLabel';
+}
+
+mapping Operation::toOperationInDataType(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'Operation_OperationLabel';
+}
+
+mapping Reception::toReceptionIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3100';
+}
+
+mapping EnumerationLiteral::toEnumerationLiteralInEnumeration(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'EnumerationLiteral_LiteralLabel';
+}
+
+mapping Activity::toActivityIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3103';
+}
+
+mapping Interaction::toInteractionIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3104';
+}
+
+mapping ProtocolStateMachine::toProtocolStateMachineIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3105';
+}
+
+mapping StateMachine::toStateMachineIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3106';
+}
+
+mapping FunctionBehavior::toFunctionBehaviorIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3107';
+}
+
+mapping OpaqueBehavior::toOpaqueBehaviorIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3108';
+}
+
+mapping Collaboration::toCollaborationIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3109';
+}
+
+mapping Interface::toInterfaceIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3110';
+}
+
+mapping Enumeration::toEnumerationIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3111';
+}
+
+mapping PrimitiveType::toPrimitiveTypeIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3112';
+}
+
+mapping DataType::toDataTypeIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3113';
+}
+
+mapping Class::toClassIn(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := '3114';
+}
+
+
+
+/******* Edges ********/
+
+
+mapping UMLConnector::toPapyrusConnector() : notation::Connector inherits Connector::toPapyrusConnector when {
+ not self.getType().oclIsUndefined() and (
+ self.element.oclIsTypeOf(ComponentRealization)or
+ self.element.oclIsTypeOf(InterfaceRealization)or
+ self.element.oclIsTypeOf(Substitution)or
+ self.element.oclIsTypeOf(Realization)or
+ self.element.oclIsTypeOf(Manifestation)or
+ self.element.oclIsTypeOf(Abstraction)or
+ self.element.oclIsTypeOf(Usage)or
+ self.element.oclIsTypeOf(Deployment)or
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(Dependency)or
+ self.element.oclIsTypeOf(uml::Connector)or
+ self.element.oclIsTypeOf(Generalization)or
+ self.element.oclIsTypeOf(InformationFlow)
+ )
+}{
+ result.styles := self.map toFontStyle();
+}
+
+/****** Element Type queries ******/
+
+query View::getNodeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(DurationInterval) then 'DurationInterval_Shape'
+ elif element.oclIsTypeOf(UseCase) then 'UseCase_Shape'
+ elif element.oclIsTypeOf(Port) then 'Port_Shape'
+ elif element.oclIsTypeOf(LiteralInteger) then 'LiteralInteger_Shape'
+ elif element.oclIsTypeOf(Node) then 'Node_Shape'
+ elif element.oclIsTypeOf(Class) then 'Class_Shape'
+ elif element.oclIsTypeOf(Expression) then 'Expression_Shape'
+ elif element.oclIsTypeOf(IntervalConstraint) then 'IntervalConstraint_Shape'
+ elif element.oclIsTypeOf(InteractionConstraint) then 'InteractionConstraint_Shape'
+ elif element.oclIsTypeOf(TimeConstraint) then 'TimeConstraint_Shape'
+ elif element.oclIsTypeOf(OpaqueBehavior) then 'OpaqueBehavior_Shape'
+ elif element.oclIsTypeOf(Duration) then 'Duration_Shape'
+ elif element.oclIsTypeOf(Actor) then 'Actor_Shape'
+ elif element.oclIsTypeOf(TimeEvent) then 'TimeEvent_Shape'
+ elif element.oclIsTypeOf(DurationConstraint) then 'DurationConstraint_Shape'
+ //elif element.oclIsTypeOf(Interface) then 'Interface_Shape'
+ elif element.oclIsTypeOf(SignalEvent) then 'SignalEvent_Shape'
+ elif element.oclIsTypeOf(TimeExpression) then 'TimeExpression_Shape'
+ elif element.oclIsTypeOf(Enumeration) then 'Enumeration_Shape'
+ elif element.oclIsTypeOf(OpaqueExpression) then 'OpaqueExpression_Shape'
+ elif element.oclIsTypeOf(LiteralBoolean) then 'LiteralBoolean_Shape'
+ elif element.oclIsTypeOf(AnyReceiveEvent) then 'AnyReceiveEvent_Shape'
+ elif element.oclIsTypeOf(FunctionBehavior) then 'FunctionBehavior_Shape'
+ elif element.oclIsTypeOf(LiteralUnlimitedNatural) then 'LiteralUnlimitedNatural_Shape'
+ elif element.oclIsTypeOf(Activity) then 'Activity_Shape'
+ elif element.oclIsTypeOf(Signal) then 'Signal_Shape'
+ elif element.oclIsTypeOf(Parameter) then 'Parameter_Shape'
+ elif element.oclIsTypeOf(StringExpression) then 'StringExpression_PackagedElementShape'
+ elif element.oclIsTypeOf(Interval) then 'Interval_Shape'
+ elif element.oclIsTypeOf(PrimitiveType) then 'PrimitiveType_Shape'
+ elif element.oclIsTypeOf(CollaborationUse) then 'CollaborationUse_Shape'
+ elif element.oclIsTypeOf(TimeObservation) then 'TimeObservation_Shape'
+ elif element.oclIsTypeOf(DeploymentSpecification) then 'DeploymentSpecification_Shape'
+ elif element.oclIsTypeOf(StateMachine) then 'StateMachine_Shape'
+ elif element.oclIsTypeOf(Device) then 'Device_Shape'
+ elif element.oclIsTypeOf(Comment) then 'Comment_Shape'
+ elif element.oclIsTypeOf(InformationItem) then 'InformationItem_Shape'
+ elif element.oclIsTypeOf(Artifact) then 'Artifact_Shape'
+ elif element.oclIsTypeOf(Collaboration) then 'Collaboration_Shape'
+ elif element.oclIsTypeOf(ProtocolStateMachine) then 'ProtocolStateMachine_Shape'
+ elif element.oclIsTypeOf(TimeInterval) then 'TimeInterval_Shape'
+ elif element.oclIsTypeOf(CallEvent) then 'CallEvent_Shape'
+ elif element.oclIsTypeOf(InstanceValue) then 'InstanceValue_Shape'
+ elif element.oclIsTypeOf(DurationObservation) then 'DurationObservation_Shape'
+ elif element.oclIsTypeOf(Property) then 'Property_Shape'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_Shape'
+ elif element.oclIsTypeOf(ExecutionEnvironment) then 'ExecutionEnvironment_Shape'
+ elif element.oclIsTypeOf(LiteralString) then 'LiteralString_Shape'
+ elif element.oclIsTypeOf(DataType) then 'DataType_Shape'
+ elif element.oclIsTypeOf(ChangeEvent) then 'ChangeEvent_Shape'
+ elif element.oclIsTypeOf(Component) then 'Component_Shape'
+ elif element.oclIsTypeOf(LiteralNull) then 'LiteralNull_Shape'
+ elif element.oclIsTypeOf(Interaction) then 'Interaction_Shape'
+ else self.fail()
+ endif;
+}
+
+
+query View::getDecorationType(element : Element) : String{
+ var res := self.doGetDecorationType(element);
+
+
+ /*log('Get papyrus ID for'+ self.element.eClass().name+', '+self.type);
+
+ log(res);
+
+ if self.container().oclIsKindOf(Node) then
+ log('IsNode')
+ else
+ log('IsEdge')
+ endif;*/
+
+
+ return res;
+}
+
+query View::doGetDecorationType(element : Element) : String{
+ return if self.container().oclIsKindOf(Node) then {
+ return if element.oclIsTypeOf(DurationInterval) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'DurationInterval_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(UseCase) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'UseCase_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Port) then
+ return switch {
+ case (self.type = 'PortName') 'Port_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(LiteralInteger) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'LiteralInteger_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Node) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Node_NameLabel';
+ case (self.type = 'StructureCompartment') 'Node_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(Class) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Class_NameLabel';
+ case (self.type = 'StructureCompartment') 'Class_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(Expression) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Expression_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(IntervalConstraint) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'IntervalConstraint_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(InteractionConstraint) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'InteractionConstraint_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(TimeConstraint) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'TimeConstraint_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(OpaqueBehavior) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'OpaqueBehavior_NameLabel';
+ case (self.type = 'StructureCompartment') 'OpaqueBehavior_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(Duration) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Duration_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Actor) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Actor_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(TimeEvent) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'TimeEvent_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(DurationConstraint) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'DurationConstraint_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Interface) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Interface_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(SignalEvent) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'SignalEvent_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(TimeExpression) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'TimeExpression_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Enumeration) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Enumeration_NameLabel';
+ case (self.type = 'EnumerationLiteralCompartment') 'Enumeration_LiteralCompartment';
+ }
+ elif element.oclIsTypeOf(OpaqueExpression) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'OpaqueExpression_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(LiteralBoolean) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'LiteralBoolean_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(AnyReceiveEvent) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'AnyReceiveEvent_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(FunctionBehavior) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'FunctionBehavior_NameLabel';
+ case (self.type = 'StructureCompartment') 'FunctionBehavior_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(LiteralUnlimitedNatural) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'LiteralUnlimitedNatural_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Activity) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Activity_NameLabel';
+ case (self.type = 'StructureCompartment') 'Activity_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(Signal) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Signal_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Parameter) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Parameter_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(StringExpression) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'StringExpression_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Interval) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Interval_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(PrimitiveType) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'PrimitiveType_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(CollaborationUse) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'CollaborationUse_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(TimeObservation) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'TimeObservation_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(DeploymentSpecification) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'DeploymentSpecification_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(StateMachine) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'StateMachine_NameLabel';
+ case (self.type = 'StructureCompartment') 'StateMachine_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(Device) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Device_NameLabel';
+ case (self.type = 'StructureCompartment') 'Device_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(InformationItem) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'InformationItem_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Artifact) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Artifact_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Collaboration) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Collaboration_NameLabel';
+ case (self.type = 'StructureCompartment') 'Collaboration_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(ProtocolStateMachine) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'ProtocolStateMachine_NameLabel';
+ case (self.type = 'StructureCompartment') 'ProtocolStateMachine_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(TimeInterval) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'TimeInterval_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(CallEvent) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'CallEvent_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(InstanceValue) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'InstanceValue_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(DurationObservation) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'DurationObservation_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Property) then
+ return switch {
+ case (self.type = 'PartName' or self.type='PartTextCompartment') 'Property_NameLabel';
+ case (self.type = 'StructureCompartment') 'Property_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(Constraint) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Constraint_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(ExecutionEnvironment) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'ExecutionEnvironment_NameLabel';
+ case (self.type = 'StructureCompartment') 'ExecutionEnvironment_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(LiteralString) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'LiteralString_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(DataType) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'DataType_NameLabel';
+ case (self.type = 'Compartment') 'DataType_AttributeCompartment';
+ case (self.type = 'Compartment') 'DataType_OperationCompartment';
+ }
+ elif element.oclIsTypeOf(ChangeEvent) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'ChangeEvent_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Component) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Component_NameLabel';
+ case (self.type = 'StructureCompartment') 'Component_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(LiteralNull) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'LiteralNull_NameLabel';
+
+ }
+ elif element.oclIsTypeOf(Interaction) then
+ return switch {
+ case (self.type = 'Name' or self.type = 'PartName') 'Interaction_NameLabel';
+ case (self.type = 'StructureCompartment') 'Interaction_StructureCompartment';
+ }
+ elif element.oclIsTypeOf(Comment) then
+ return switch {
+ case (self.type = 'CommentBody') 'Comment_BodyLabel';
+ }
+ endif
+ } else {
+ return if element.oclIsTypeOf(ComponentRealization) then
+ return switch {
+ case (self.type='Name') 'ComponentRealization_NameLabel';
+ case (self.type = 'NameLabel') 'ComponentRealization_NameLabel';
+ case (self.type = 'KindLabel') 'ComponentRealization_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(InterfaceRealization) then
+ return switch {
+ case (self.type='Name') 'InterfaceRealization_NameLabel';
+ case (self.type = 'NameLabel') 'InterfaceRealization_NameLabel';
+ case (self.type = 'KindLabel') 'InterfaceRealization_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Substitution) then
+ return switch {
+ case (self.type='Name') 'Substitution_NameLabel';
+ case (self.type = 'NameLabel') 'Substitution_NameLabel';
+ case (self.type = 'KindLabel') 'Substitution_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Realization) then
+ return switch {
+ case (self.type='Name') 'Realization_NameLabel';
+ case (self.type = 'NameLabel') 'Realization_NameLabel';
+ case (self.type = 'KindLabel') 'Realization_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Manifestation) then
+ return switch {
+ case (self.type='Name') 'Manifestation_NameLabel';
+ case (self.type = 'NameLabel') 'Manifestation_NameLabel';
+ case (self.type = 'KindLabel') 'Manifestation_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Abstraction) then
+ return switch {
+ case (self.type='Name') 'Abstraction_NameLabel';
+ case (self.type = 'NameLabel') 'Abstraction_NameLabel';
+ case (self.type = 'KindLabel') 'Abstraction_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Usage) then
+ return switch {
+ case (self.type='Name') 'Usage_NameLabel';
+ case (self.type = 'NameLabel') 'Usage_NameLabel';
+ case (self.type = 'KindLabel') 'Usage_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Deployment) then
+ return switch {
+ case (self.type='Name') 'Deployment_NameLabel';
+ case (self.type = 'NameLabel') 'Deployment_NameLabel';
+ case (self.type = 'KindLabel') 'Deployment_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Dependency) then
+ return switch {
+ case (self.type='Name') 'Dependency_RoleBindingNameLabel';
+ case (self.type = 'NameLabel') 'Dependency_RoleBindingNameLabel';
+ case (self.type = 'KindLabel') 'Dependency_RoleBindingStereotypeLabel';
+ }
+ elif element.oclIsTypeOf(Dependency) then
+ return switch {
+ case (self.type='Name') 'Dependency_NameLabel';
+ case (self.type = 'NameLabel') 'Dependency_NameLabel';
+ case (self.type = 'KindLabel') 'Dependency_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(uml::Connector) then
+ return switch {
+ case (self.type='Name') 'Connector_NameLabel';
+ case (self.type = 'KindLabel') 'Connector_StereotypeLabel';
+ case (self.type = 'NameLabel') 'Connector_NameLabel';
+ case (self.type = 'FromMultiplicityLabel') 'Connector_SourceMultiplicityLabel';
+ case (self.type = 'ToMultiplicityLabel') 'Connector_TargetMultiplicityLabel';
+ }
+ elif element.oclIsTypeOf(Generalization) then
+ return switch {
+
+ case (self.type = 'KindLabel') 'Generalization_StereotypeLabel';
+ }
+ elif element.oclIsTypeOf(InformationFlow) then
+ return switch {
+
+
+ case (self.type = 'KindLabel') 'InformationFlow_StereotypeLabel';
+ }
+ endif
+ } endif;
+}
+
+
+query View::getEdgeType(element : Element) : String {
+ return
+ if self.type = 'Reference' then '' /* Comment/Constraint Links handled separately */
+ elif element.oclIsTypeOf(ComponentRealization) then 'ComponentRealization_Edge'
+ elif element.oclIsTypeOf(InterfaceRealization) then 'InterfaceRealization_Edge'
+ elif element.oclIsTypeOf(Substitution) then 'Substitution_Edge'
+ elif element.oclIsTypeOf(Realization) then 'Realization_Edge'
+ elif element.oclIsTypeOf(Manifestation) then 'Manifestation_Edge'
+ elif element.oclIsTypeOf(Abstraction) then 'Abstraction_Edge'
+ elif element.oclIsTypeOf(Usage) then 'Usage_Edge'
+ elif element.oclIsTypeOf(Deployment) then 'Deployment_Edge'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_RoleBindingEdge'
+ elif element.oclIsTypeOf(Dependency) then 'Dependency_Edge'
+ elif element.oclIsTypeOf(uml::Connector) then 'Connector_Edge'
+ elif element.oclIsTypeOf(Generalization) then 'Generalization_Edge'
+ elif element.oclIsTypeOf(InformationFlow) then 'InformationFlow_Edge'
+ else self.fail()
+ endif;
+}
+
+// see Bug 508438: a semiautomatic port layout is the persistence of a port shape layout (with no specific x and y) in the notation model
+// this layout constraint is added whenever the parent shape got refreshed (when for example we move another port)
+// we did not tranform this type of port shape to not force the location of the port at the top left corner (with explicitly x=y=0)
+query UMLShape::isSemiAutomatic() : Boolean {
+ var layoutlocation = self.layoutConstraint.oclAsType(Location);
+ return layoutlocation.x=0 and layoutlocation.y=0;
+
+}
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAToPapyrus.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAToPapyrus.qvto
new file mode 100644
index 0000000..7fef10d
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAToPapyrus.qvto
@@ -0,0 +1,464 @@
+/*****************************************************************************
+ * Copyright (c) 2013, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bugs 461980, 496653, 497841, 498282
+ *****************************************************************************/
+import org.eclipse.papyrus.interoperability.common.utils.UI;
+import org.eclipse.papyrus.interoperability.common.utils.NotationTypes;
+import libraries.EclipseUI;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+modeltype holder "strict" uses 'http://www.eclipse.org/papyrus/migration/diagramholder';
+
+/**
+* Abstract transformation rules for importing notation diagrams into Papyrus
+*/
+transformation RSAToPapyrus(inout semantics : uml, out graphics : notation, in param : config);
+
+
+main() {
+ semantics.rootObjects()[uml::Element]->map toOwnedDiagrams();
+}
+
+mapping inout Element::toOwnedDiagrams(){
+ self.ownedElement.map toOwnedDiagrams();
+
+ self.eAnnotations->select (source = 'uml2.diagrams' or source = 'uml2.profile.diagrams').map toOwnedDiagrams();
+ //self.eAnnotations := self.eAnnotations->reject(source = 'uml2.diagrams' or source = 'uml2.profile.diagrams'); /* Delete diagrams from resulting UML Model */
+}
+
+mapping EAnnotation::toOwnedDiagrams()
+ when { self.source = 'uml2.diagrams' or self.source = 'uml2.profile.diagrams'}{
+
+ self.contents->selectByKind(notation::Diagram).map generateDiagram();
+}
+
+mapping DiagramHolder::toOwnedDiagrams() {
+ self.ownedDiagrams.map generateDiagram();
+}
+
+/** Abstract mappings. Never called directly, inherited only */
+
+
+abstract mapping notation::View::toPapyrusView() : notation::View {
+ result.element := self.element; /* UML Model is in-out. No mapping required. */
+ result.visible := self.visible;
+
+ // Bug 496653: Name labels need to be first for proper rendering in Papyrus
+ var sortedChildren := self.children->sortedBy(if isNameLabel() then -1 else 0 endif);
+ result.children := sortedChildren.map toNode();
+ result.type := self.getType();
+
+ // Adjust containment or other characteristics, as necessary, after attachment
+ result.children.map adjustNode();
+}
+
+/** Overridden/extended in specialized mappings to adjust newly attached nodes. */
+abstract mapping inout notation::Node::adjustNode() {
+ // Pass
+}
+
+/** A name label is a BasicDecorationNode of type 'Name' in RSA diagrams. */
+query Node::isNameLabel() : Boolean {
+ return self.oclIsKindOf(BasicDecorationNode) and self.type = 'Name'
+}
+
+abstract mapping Edge::toPapyrusEdge() : Edge inherits View::toPapyrusView {
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := self.sourceAnchor.map toAnchor();
+ result.targetAnchor := self.targetAnchor.map toAnchor();
+
+ result.source := self.source.map toView();
+ result.target := self.target.map toView();
+}
+
+abstract mapping Connector::toPapyrusConnector() : Connector inherits Edge::toPapyrusEdge, RoutingStyle::toRoutingstyle, LineStyle::toLineStyle {};
+
+abstract mapping Connector::toCommentLink() : Connector inherits Connector::toPapyrusConnector{};
+
+abstract mapping Node::toPapyrusNode() : Node inherits View::toPapyrusView{};
+
+abstract mapping inout Shape::addCommentDecoration(){};
+
+abstract mapping Node::toPapyrusConnectorLabel() : Node {
+ result.visible := self.visible;
+ result.type := self.getType();
+
+ var initX := self.layoutConstraint.oclAsType(Location).x;
+ var initY := self.layoutConstraint.oclAsType(Location).y;
+
+ if self.diagram.isHimetric() then {
+ initX := self.toPixels(initX);
+ initY := self.toPixels(initY);
+ } endif;
+
+ result.layoutConstraint := object Location {
+ x := initX;
+ y := initY;
+ };
+
+ //Do not set element
+ //Do not set children
+}
+
+abstract mapping Node::toPapyrusNodeLabel() : Node {
+
+ result.visible := self.visible;
+
+ result.type := self.getType();
+
+ result.layoutConstraint := (self.layoutConstraint.map toLayout(self.diagram)).oclAsType(Location);
+
+ //Do not set element
+ //Do not set children
+}
+
+abstract mapping Shape::toPapyrusShape() : Shape inherits Node::toPapyrusNode, FillStyle::toFillStyle, FontStyle::toFontStyle, LineStyle::toLineStyle{
+ result.layoutConstraint := self.layoutConstraint.map toLayout(self.diagram);
+
+ if self.oclIsKindOf(UMLView) then {
+ result.map handleStereotypeDisplay(self.oclAsType(UMLView));
+ } endif;
+}
+
+mapping inout View::handleStereotypeDisplay(sourceView : UMLView) : StringValueStyle when {
+ not sourceView.showStereotype.oclIsUndefined()
+}{
+ //We need to know all stereotypes to properly translate this in Papyrus, but they might be broken at this stage
+ //Additionally, we will lose track of the source View when stereotypes are fixed.
+ //Let's serialize this information temporarily, then rely on it to properly initialize Papyrus DecorationNodes later
+ result.name := "stereotypeDisplayBackup";
+ result.stringValue := sourceView.showStereotype;
+ self.styles += result;
+}
+
+abstract mapping DrawerStyle::toDrawerStyle() : DrawerStyle {
+ result.collapsed := self.collapsed;
+}
+
+abstract mapping BasicSemanticCompartment::toBasicCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle {
+ result.styles := object TitleStyle{
+ showTitle := self.styles->selectByKind(TitleStyle)->any(true).showTitle;
+ };
+}
+
+abstract mapping UMLShapeCompartment::toAbstractStructureCompartment() : DecorationNode inherits Node::toPapyrusNode {
+ result.styles := object TitleStyle{
+ showTitle := self.showTitle;
+ };
+}
+
+abstract mapping Diagram::toPapyrusDiagram() : notation::Diagram inherits notation::View::toPapyrusView {
+
+ population {
+ result.name := self.getName();
+
+ /* Papyrus uses Pixel, whereas RSA uses Himetric. Forcing the conversion to Pixel is a bad idea */
+ result.measurementUnit := MeasurementUnit::Pixel;
+ result.styles := createDiagramStyle();
+
+ result.element := self.findElement().oclAsType(EObject);
+ // log(result.element.eClass().name);
+ // log(result.element.toString());
+ var targetEdges := self.edges.map toEdge();
+ result.edges += targetEdges;
+
+ // And tweak some details
+ if (result.hasDiagramFrame()) then {
+ result.getDiagramFrame().map defaultFrameSize();
+ } endif;
+ }
+
+ end {
+ worked(1);
+ }
+}
+
+query Diagram::getName() : String{
+ return if self.name.oclIsUndefined() or self.name = '' then {
+ var element := self.findElement();
+ return if element.oclIsKindOf(NamedElement) then
+ element.oclAsType(NamedElement).getDiagramName()
+ else
+ ''
+ endif;
+ } else
+ self.name
+ endif;
+}
+
+query NamedElement::getDiagramName() : String {
+ return if self.oclIsKindOf(Behavior) then
+ self.owner.oclAsType(NamedElement).getDiagramName()
+ else
+ self.name
+ endif;
+}
+
+query Diagram::findElement() : Element {
+ var owningEAnnotation := self.container(); //Simple diagram, stored in its context element
+
+ if owningEAnnotation.oclIsUndefined() or not owningEAnnotation.oclIsKindOf(EAnnotation) then
+ //Maybe the diagram is stored in a fragment. Find its DiagramHolder
+ owningEAnnotation := semantics.objectsOfType(DiagramHolder)![ownedDiagrams->includes(self)]
+ endif;
+
+ return if owningEAnnotation.oclIsUndefined() then
+ //We didn't find the EAnnotation containing the Diagram. Use any root element of the model (Usually there is only one)
+ semantics.rootObjects()[Element]->any(true)
+ else
+ owningEAnnotation.oclAsType(EAnnotation).eModelElement.oclAsType(Element)
+ endif;
+}
+
+abstract mapping Element::toCompartmentEntry(node : Node) : Shape {
+ result.element := self.oclAsType(EObject);
+ //result.type := self.findType(node);
+}
+
+helper createDiagramStyle() : DiagramStyle {
+ return object DiagramStyle {
+
+ };
+}
+
+
+/** Common mappings: Copy (Call or Inherit) */
+
+mapping FontStyle::toFontStyle() : FontStyle {
+ result.fontColor := self.fontColor;
+ result.fontName := self.fontName;
+ result.fontHeight := self.fontHeight;
+ result.bold := self.bold;
+ result.italic := self.italic;
+ result.underline := self.underline;
+ result.strikeThrough := self.strikeThrough;
+}
+
+mapping FillStyle::toFillStyle() : FillStyle {
+ result.fillColor := self.fillColor;
+
+ /* Workaround for Bug 456933: use default transparency so that CSS can override the value if necessary */
+ result.transparency := if self.transparency = 0 then -1 else self.transparency endif;
+
+ //TODO: Gradient
+}
+
+mapping LineStyle::toLineStyle() : LineStyle {
+ result.lineColor := self.lineColor;
+ result.lineWidth := self.lineWidth;
+}
+
+mapping RoutingStyle::toRoutingstyle() : RoutingStyle {
+ result.roundedBendpointsRadius := 0; // see Bug 506718 : do not transform roundedBendpoint :cause corrupted connection in Papyrus
+ result.routing := self.routing;
+ result.smoothness := self.smoothness;
+ result.avoidObstructions := self.avoidObstructions;
+ result.closestDistance := self.closestDistance;
+ result.jumpLinkStatus := self.jumpLinkStatus;
+ result.jumpLinkType := self.jumpLinkType;
+ result.jumpLinksReverse := self.jumpLinksReverse;
+}
+
+abstract mapping Bendpoints::toBendpoint(diagram: Diagram) : Bendpoints disjuncts
+ RelativeBendpoints::toBendpoint
+;
+
+mapping RelativeBendpoints::toBendpoint(diagram: Diagram) : Bendpoints {
+ init {
+ result := object RelativeBendpoints {}
+ }
+
+ var convertToPixels := diagram.isHimetric();
+ self.copyBendpoints(result.oclAsType(RelativeBendpoints), convertToPixels);
+}
+
+mapping LayoutConstraint::toLayout(diagram : Diagram) : LayoutConstraint disjuncts
+ Bounds::toLayout{
+}
+
+mapping Bounds::toLayout(diagram : Diagram) : LayoutConstraint {
+ init {
+ result := object Bounds{}
+ }
+
+ var bounds : Bounds := result.oclAsType(Bounds);
+
+ if diagram.isHimetric() then {
+ bounds.x := self.toPixels(self.x);
+ bounds.y := self.toPixels(self.y);
+ if self.width > 0 then bounds.width := self.toPixels(self.width) endif;
+ if self.height > 0 then bounds.height := self.toPixels(self.height) endif;
+ } else{
+ bounds.x := self.x;
+ bounds.y := self.y;
+ if self.width > 0 then bounds.width := self.width endif;
+ if self.height > 0 then bounds.height := self.height endif;
+ } endif;
+}
+
+query View::isHimetric() : Boolean {
+ return self.diagram.measurementUnit = MeasurementUnit::Himetric
+}
+
+mapping Anchor::toAnchor() : Anchor disjuncts
+ IdentityAnchor::toAnchor{
+
+}
+
+mapping IdentityAnchor::toAnchor() : Anchor {
+ init {
+ result := object IdentityAnchor {
+ }
+ }
+
+ var id := if self.oclAsType(EObject).isHimetric() then {
+ var id := self.id;
+ var part1 := id.substringBefore(':').asInteger();
+ var part2 := id.substringAfter(':').asInteger();
+ var newId := if part1.oclIsInvalid() or part2.oclIsInvalid() then
+ self.id
+ else
+ (self.toPixels(part1).toString())+':'+(self.toPixels(part2).toString())
+ endif;
+ newId;
+ } else {
+ self.id;
+ } endif;
+
+ result.oclAsType(IdentityAnchor).id := id;
+}
+
+query EObject::isHimetric() : Boolean {
+ return if self.oclIsKindOf(Diagram) then
+ self.oclAsType(Diagram).isHimetric()
+ else
+ self.eContainer().isHimetric()
+ endif;
+}
+
+helper View::fail() : String {
+ var type := self.type;
+ var isProxy := self.element != null and self.element.oclIsUndefined();
+ var semanticEClassName := if isProxy then 'Unresolved (proxy) reference' elif self.element = null then 'No semantic element' else self.element.eClass().name endif;
+ warning('Unknown or unsupported element type. Graphical Type = "'+self.type+'", Semantic Type = "'+semanticEClassName+'". Diagram Type: "'+self.diagram.type+'". The element will be ignored.');
+ return '';
+}
+
+/**
+ * Unset the named feature of an object.
+ */
+helper OclAny::unset(feature : String) {
+ var eObject : EObject := self.oclAsType(EObject);
+ eObject.eUnset(eObject.eClass().getEStructuralFeature(feature));
+}
+
+
+/** Generic mapping logic */
+
+query View::getType(): String{
+ var element : Element := self.findElement();
+
+ return
+
+ if self.oclIsKindOf(Diagram) then
+ self.getDiagramType()
+ elif self.oclIsKindOf(Edge) then
+ self.getEdgeType(element)
+ elif self.oclIsKindOf(BasicDecorationNode) then
+ self.getDecorationType(element)
+ elif self.oclIsKindOf(Node) then
+ self.getNodeType(element)
+ else self.fail()
+
+ endif;
+}
+
+query View::parent() : View {
+ return self.oclAsType(EObject).eContainer().oclAsType(View);
+}
+
+query Node::parentNode() : Node {
+ return self.oclAsType(EObject).eContainer().oclAsType(Node);
+}
+
+query View::findElement() : Element {
+ return self.findAssociatedElement().oclAsType(Element);
+}
+
+query View::findAssociatedElement() : EObject {
+ return if self.element.oclIsUndefined() then
+ self.container().oclAsType(View).findAssociatedElement()
+ else
+ self.element
+ endif;
+}
+
+query Sequence(Node)::safeUnion(unionWith: Sequence(Node)) : Sequence(Node) {
+ var res := if self->oclIsUndefined() and unionWith->oclIsUndefined() then
+ object Sequence(Object){}
+ elif self->oclIsUndefined() then
+ unionWith
+ elif unionWith->oclIsUndefined() then
+ self
+ else
+ self->union(unionWith)
+ endif;
+
+ return res;
+}
+
+mapping View::toView() : View disjuncts Node::toNode, Edge::toEdge;
+
+
+/** Diagram-specific transformations (Implement only) */
+
+abstract mapping Node::toNode() : Node;
+
+abstract mapping Edge::toEdge() : Edge;
+
+abstract query View::getDiagramType() : String;
+
+//Distinction between TopNode and ChildNode is not important in the Notation model.
+//Simply use the TopNode Type.
+abstract query View::getNodeType(element : Element) : String;
+
+abstract query View::getEdgeType(element : Element) : String;
+
+abstract query View::getDecorationType(element : Element) : String;
+
+/** Queries whether the imported diagram has a frame (as in behaviour or structure diagrams). */
+query Diagram::hasDiagramFrame() : Boolean {
+ return not self.getDiagramFrame().oclIsUndefined();
+}
+
+/** Overridden by specializing transformations to get the diagram frame, if any. */
+query Diagram::getDiagramFrame() : Node {
+ return null;
+}
+
+/** Tweaks for specific diagrams */
+
+/** Overridden by specializing transformations to set the default dimensions of the diagram frame. */
+mapping inout Node::defaultFrameSize()
+ when { self.layoutConstraint.oclIsKindOf(notation::Size) and let size = self.layoutConstraint.oclAsType(notation::Size) in
+ size.width = -1 or size.height = -1 }
+{
+ // Pass
+}
+
+/** Main diagram mapping */
+abstract mapping notation::Diagram::generateDiagram() : notation::Diagram;
+
+
diff --git a/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAUsecaseDiagram.qvto b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAUsecaseDiagram.qvto
new file mode 100644
index 0000000..3ef1527
--- /dev/null
+++ b/rsa/plugins/org.eclipse.papyrus.interoperability.rsa/transform/RSAUsecaseDiagram.qvto
@@ -0,0 +1,397 @@
+/*****************************************************************************
+ * Copyright (c) 2015, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bug 465656
+ *****************************************************************************/
+import RSAToPapyrus;
+import org.eclipse.papyrus.interoperability.common.blackboxes.utils.Properties;
+
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype umlNotation "strict" uses 'http://www.eclipse.org/papyrus/umlnotation';
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype ecore "strict" uses 'http://www.eclipse.org/emf/2002/Ecore';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype vpconfig "strict" uses 'http://www.eclipse.org/papyrus/infra/viewpoints/configuration';
+modeltype vpstyle "strict" uses 'http://www.eclipse.org/papyrus/infra/viewpoints/policy/style';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation RSAUsecaseDiagram(inout semantics : uml, inout graphics : notation, out di : sash, in param : config);
+
+main() {
+ semantics.rootObjects()[uml::Element]->map toOwnedDiagrams();
+}
+
+query View::getDiagramType() : String{
+ return 'UseCase';
+}
+
+mapping notation::Diagram::generateDiagram() : notation::Diagram inherits Diagram::toPapyrusDiagram when {
+ self.type = 'Usecase'
+}{
+ end {
+ //Remove Generalization#name since it is not supported in Papyrus
+ result.edges->select(e | e.type = 'Generalization_Edge').children->selectByType(DecorationNode)->select(type.oclIsUndefined()).map delete();
+
+ //Change the position of the Actor#name Label, since it is fixed in RSA and Floating in Papyrus
+ graphics.objectsOfType(DecorationNode)->select(type = 'Actor_NameLabel').map fixActorLabelPosition();
+ }
+}
+
+mapping inout notation::DecorationNode::fixActorLabelPosition() when {
+ self.type = 'Actor_NameLabel'
+} {
+ self.layoutConstraint := object Location {
+ x := 20;
+ y := 60;
+ }
+}
+
+mapping inout notation::DecorationNode::delete(){
+ graphics.removeElement(self)
+}
+
+mapping Node::toNode() : Node disjuncts
+ UMLShape::toPapyrusShape,
+ UMLShapeCompartment::toStructureCompartment,
+ BasicDecorationNode::toConnectorLabel,
+ BasicDecorationNode::toLabel,
+ //BasicSemanticCompartment::toListCompartment,
+ ListCompartment::toListCompartment
+ //TODO: Disjunct nodes mapping
+;
+/***** Nodes **********/
+
+mapping UMLShape::toPapyrusShape() : Shape inherits Shape::toPapyrusShape when {
+ self.type = '' and (
+self.element.oclIsTypeOf(Actor) or
+self.element.oclIsTypeOf(UseCase) or
+self.element.oclIsTypeOf(Package) or
+self.element.oclIsTypeOf(Constraint) or
+self.element.oclIsTypeOf(Comment) or
+self.element.oclIsKindOf(Classifier) or
+self.element.oclIsKindOf(NamedElement) or
+self.element.oclIsTypeOf(Diagram)
+ )
+}{
+
+}
+mapping BasicDecorationNode::toLabel() : DecorationNode inherits Node::toPapyrusNode when {
+ self.element.oclIsKindOf(uml::NamedElement) and
+ self.type = 'Name' or
+ self.type = 'ValueSpecification' or //Constraint body
+ self.type = 'CommentBody' //Comment body
+}{
+
+}
+mapping Edge::toEdge() : Edge disjuncts
+ UMLConnector::toCommentLink,
+ UMLConnector::toConstraintLink,
+ UMLConnector::toPapyrusConnector
+;
+
+/******* Edges ********/
+
+
+mapping UMLConnector::toPapyrusConnector() : Connector inherits Connector::toPapyrusConnector when {
+ self.type = '' and (
+self.element.oclIsTypeOf(Include) or
+self.element.oclIsTypeOf(Extend) or
+self.element.oclIsTypeOf(Generalization) or
+self.element.oclIsTypeOf(Association) or
+self.element.oclIsTypeOf(Dependency) or
+self.element.oclIsTypeOf(Abstraction) or
+self.element.oclIsTypeOf(Usage) or
+self.element.oclIsTypeOf(Realization) or
+self.element.oclIsTypeOf(PackageMerge) or
+self.element.oclIsTypeOf(PackageImport)
+ )
+}{
+ result.styles := self.map toFontStyle();
+}
+
+mapping UMLConnector::toCommentLink() : Connector inherits Connector::toCommentLink when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Comment) or
+ self.target.element.oclIsKindOf(Comment)
+ )
+}{
+ result.type :='Comment_AnnotatedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+mapping UMLConnector::toConstraintLink() : Connector inherits Connector::toPapyrusConnector when{
+ self.type='Reference' and (
+ self.source.element.oclIsTypeOf(Constraint) or
+ self.target.element.oclIsKindOf(Constraint)
+ )
+}{
+ result.type :='Constraint_ConstrainedElementEdge';
+ result.bendpoints := self.bendpoints.map toBendpoint(self.diagram);
+ result.sourceAnchor := object IdentityAnchor{};
+}
+
+/****** Connector Labels ******/
+
+mapping BasicDecorationNode::toConnectorLabel() : DecorationNode inherits Node::toPapyrusConnectorLabel when {
+ self.type = 'ToMultiplicityLabel' or
+ self.type = 'ToRoleLabel' or
+ self.type = 'FromMultiplicityLabel' or
+ self.type = 'FromRoleLabel' or
+ self.type = 'NameLabel' or
+ self.type = 'KindLabel'
+}{
+
+}
+/****** Compartments *******/
+
+mapping UMLShapeCompartment::toStructureCompartment() : DecorationNode inherits UMLShapeCompartment::toAbstractStructureCompartment when {
+ self.type = 'StructureCompartment' or
+ self.type = 'PackageContents' or
+ self.type = 'UseCaseShapeCompartment'
+ and not self.getType().oclIsUndefined();
+}{
+
+}
+
+
+
+//0. Top-level mapping operation
+//Standard Compartments (e.g. slots)
+mapping ListCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment') or self.type = 'Extension_Points'
+} {
+ //Super class implementation is sufficient. It will already transform the children and set the compartment ID
+ result.children += self.findElement().map toContents(self);
+}
+
+//Synchronized Compartments
+mapping BasicSemanticCompartment::toListCompartment() : BasicCompartment inherits Node::toPapyrusNode, DrawerStyle::toDrawerStyle when {
+ self.type.endsWith('Compartment')
+}{
+ result.children += self.findElement().map toContents(self);
+}
+
+ //1.1 BasicCompartment
+mapping Element::toContents(node : BasicSemanticCompartment) : Sequence(Node);
+
+ //1.2 ListCompartment
+mapping Element::toContents(node : ListCompartment) : Sequence(Node) disjuncts
+ UseCase::toContents
+;
+ //2. TopLevelNode x Compartment
+mapping UseCase::toContents(node : ListCompartment) : Sequence(Node) disjuncts
+UseCase::toExtensionPointCompartmentContents
+;
+
+ //3. Compartment x ElementType
+
+mapping UseCase::toExtensionPointCompartmentContents(node : ListCompartment) : Sequence(Node) when {
+ node.type = 'Extension_Points';
+}{
+ init {
+ result :=
+ (self.map fillExtensionPoint(node))
+ }
+}
+
+ //4. ElementType
+
+mapping uml::UseCase::fillExtensionPoint(node : ListCompartment) : Sequence(Node) when {
+ node.type='ExtensionPointCompartment';
+}{
+ init {
+ result := self.extensionPoint->selectByKind(ExtensionPoint).map toExtensionPointInUseCase(node)->asSequence();
+ }
+}
+
+ //5. ChildLabelNode x TopNode visual ID
+mapping ExtensionPoint::toExtensionPointInUseCase(node : Node) : Shape inherits Element::toCompartmentEntry {
+ result.type := 'ExtensionPoint_ExtensionPointLabel';
+}
+
+query View::getDecorationType(element : Element) : String{
+ var res := self.doGetDecorationType(element);
+
+ /*log('Get papyrus ID for'+ element.oclAsType(EObject).eClass().name+', '+self.type);
+
+ log(res);
+
+ if self.container().oclIsKindOf(Node) then
+ log('IsNode')
+ else
+ log('IsEdge')
+ endif;*/
+
+ return res;
+}
+/****** Element Type queries ******/
+
+query View::getNodeType(element : Element) : String {
+ return
+ if element.oclIsTypeOf(Actor) then 'Actor_Shape'
+ elif element.oclIsTypeOf(UseCase) then 'UseCase_Shape'
+ elif element.oclIsTypeOf(Package) then 'Package_Shape'
+ elif element.oclIsTypeOf(Constraint) then 'Constraint_Shape'
+ elif element.oclIsTypeOf(Comment) then 'Comment_Shape'
+ elif element.oclIsTypeOf(Diagram) then 'Diagram_ShortcutShape'
+ elif element.oclIsKindOf(Classifier) then 'Classifier_SubjectShape'
+ elif element.oclIsKindOf(NamedElement) then 'NamedElement_DefaultShape'
+ else self.fail()
+ endif;
+}
+query View::getEdgeType(element : Element) : String {
+ return if self.type = 'Reference' then '' /* Context and Constraint Links handled separately */
+ elif self.element.oclIsTypeOf(Include) then 'Include_Edge'
+ elif self.element.oclIsTypeOf(Extend) then 'Extend_Edge'
+ elif self.element.oclIsTypeOf(Generalization) then 'Generalization_Edge'
+ elif self.element.oclIsTypeOf(Association) then 'Association_Edge'
+ elif self.element.oclIsTypeOf(Dependency) then 'Dependency_Edge'
+ elif self.element.oclIsTypeOf(Abstraction) then 'Abstraction_Edge'
+ elif self.element.oclIsTypeOf(Usage) then 'Usage_Edge'
+ elif self.element.oclIsTypeOf(Realization) then 'Realization_Edge'
+ elif self.element.oclIsTypeOf(PackageMerge) then 'PackageMerge_Edge'
+ elif self.element.oclIsTypeOf(PackageImport) then 'PackageImport_Edge'
+ else self.fail()
+ endif;
+}
+
+query View::doGetDecorationType(element : Element) : String{
+
+ return if self.container().oclIsKindOf(Node) then {
+ /* Labels & Compartments (GenCompartment + GenNodeLabel) */
+ return if
+
+ element.oclIsKindOf(Actor) then
+ return switch {
+ case (self.type = 'Name') 'Actor_NameLabel';
+ case (self.type = 'UNKNOWN') 'Actor_StereotypeLabel';
+ case (self.type = 'UNKNOWN') 'Actor_QualifiedNameLabel';
+ case (self.type = 'Name') 'Actor_FloatingNameLabel';
+ }
+ elif
+ element.oclIsKindOf(Actor) then
+ return switch {
+ case (self.type = 'Name') 'Actor_ClassifierNameLabel';
+ }
+ elif
+ element.oclIsKindOf(UseCase) then
+ return switch {
+ case (self.type = 'Name') 'UseCase_NameLabel';
+ case (self.type = 'Name') 'UseCase_FloatingNameLabel';
+ case (self.type = 'Extension_Points') 'UseCase_ExtensionPointCompartment';
+ }
+ elif
+ element.oclIsKindOf(UseCase) then
+ return switch {
+ case (self.type = 'Name') 'UseCase_ClassifierNameLabel';
+ case (self.type = 'Extension_Points') 'UseCase_ClassifierExtensionPointCompartment';
+ }
+ elif
+ element.oclIsKindOf(Classifier) then
+ return switch {
+ case (self.type = 'Name') 'Classifier_NameLabel';
+ case (self.type = 'Name') 'Classifier_FloatingNameLabel';
+ case (self.type = 'UseCaseShapeCompartment') 'Classifier_UseCaseCompartment';
+ }
+ elif
+ element.oclIsKindOf(Package) then
+ return switch {
+ case (self.type = 'Name') 'Package_NameLabel';
+ case (self.type = 'PackageContents') 'Package_PackagedElementCompartment';
+ }
+ elif
+ element.oclIsKindOf(Constraint) then
+ return switch {
+ case (self.type = 'Name') 'Constraint_NameLabel';
+ case (self.type = 'ValueSpecification') 'Constraint_BodyLabel';
+ }
+ elif
+ element.oclIsKindOf(Comment) then
+ return switch {
+ case (self.type = 'CommentBody') 'Comment_BodyLabel';
+ }
+ elif
+ element.oclIsKindOf(NamedElement) then
+ return switch {
+ case (self.type = 'Name') 'NamedElement_NameLabel';
+ }
+ elif
+ element.oclIsKindOf(Diagram) then
+ return switch {
+ case (self.type = 'Name') 'Diagram_NameLabel';
+ }
+ endif
+ } else { /* Floating Edge Labels */
+ return if
+ element.oclIsKindOf(Include) then
+ return switch {
+ case (self.type='KindLabel') 'Include_KeywordLabel';
+ case (self.type='Stereotype') 'Include_StereotypeLabel';
+ }
+ elif
+ element.oclIsKindOf(Extend) then
+ return switch {
+ case (self.type='KindLabel') 'Extend_KeywordLabel';
+ case (self.type='Stereotype') 'Extend_StereotypeLabel';
+ }
+ elif
+ element.oclIsKindOf(Generalization) then
+ return switch {
+ case (self.type='Stereotype') 'Generalization_StereotypeLabel';
+ }
+ elif
+ element.oclIsKindOf(Association) then
+ return switch {
+ case (self.type='Name') 'Association_NameLabel';
+ case (self.type='Stereotype') 'Association_StereotypeLabel';
+ case (self.type='NameLabel') 'Association_NameLabel';
+ }
+ elif
+ element.oclIsKindOf(Realization) then
+ return switch {
+ case (self.type='Name') 'Realization_NameLabel';
+ case (self.type='Stereotype') 'Realization_StereotypeLabel';
+ case (self.type='NameLabel') 'Realization_NameLabel';
+ }
+ elif
+ element.oclIsKindOf(Abstraction) then
+ return switch {
+ case (self.type='Name') 'Abstraction_NameLabel';
+ case (self.type='Stereotype') 'Abstraction_StereotypeLabel';
+ case (self.type='NameLabel') 'Abstraction_NameLabel';
+ }
+ elif
+ element.oclIsKindOf(Usage) then
+ return switch {
+ case (self.type='Name') 'Usage_NameLabel';
+ case (self.type='Stereotype') 'Usage_StereotypeLabel';
+ case (self.type='NameLabel') 'Usage_NameLabel';
+ }
+ elif
+ element.oclIsKindOf(Dependency) then
+ return switch {
+ case (self.type='Name') 'Dependency_NameLabel';
+ case (self.type='Stereotype') 'Dependency_StereotypeLabel';
+ case (self.type='NameLabel') 'Dependency_NameLabel';
+ }
+ elif
+ element.oclIsKindOf(PackageMerge) then
+ return switch {
+ case (self.type='Stereotype') 'PackageMerge_StereotypeLabel';
+ }
+ elif
+ element.oclIsKindOf(PackageImport) then
+ return switch {
+ case (self.type='Stereotype') 'PackageImport_StereotypeLabel';
+ }
+ endif;
+ } endif;
+}
diff --git a/rsa/plugins/pom.xml b/rsa/plugins/pom.xml
new file mode 100644
index 0000000..cdeff87
--- /dev/null
+++ b/rsa/plugins/pom.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.plugins</artifactId>
+ <packaging>pom</packaging>
+ <parent>
+ <groupId>org.eclipse.papyrus.interoperability</groupId>
+ <artifactId>org.eclipse.papyrus.interoperability.releng</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../releng/main/pom.xml</relativePath>
+ </parent>
+ <name>Papyrus Interoperability Rsa Plugins</name>
+ <description>The top container of Rsa Migration plug-ins for the Rsa Interoperability.</description>
+ <version>1.4.0-SNAPSHOT</version>
+
+ <modules>
+ <module>org.eclipse.papyrus.interoperability.rsa</module>
+ </modules>
+</project>
\ No newline at end of file
diff --git a/rsa/releng/.project b/rsa/releng/.project
new file mode 100644
index 0000000..8ef9e87
--- /dev/null
+++ b/rsa/releng/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rsa.releng</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
diff --git a/rsa/releng/main/pom.xml b/rsa/releng/main/pom.xml
new file mode 100644
index 0000000..ac0e7b3
--- /dev/null
+++ b/rsa/releng/main/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.releng</artifactId>
+ <packaging>pom</packaging>
+ <version>1.4.0-SNAPSHOT</version>
+ <parent>
+ <groupId>org.eclipse.papyrus.interoperability</groupId>
+ <artifactId>org.eclipse.papyrus.interoperability.releng</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../../releng/main/pom.xml</relativePath>
+ </parent>
+ <modules>
+ <module>targetplatform</module>
+ </modules>
+</project>
diff --git a/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/.project b/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/.project
new file mode 100644
index 0000000..3c9c198
--- /dev/null
+++ b/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen.target b/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen.target
new file mode 100644
index 0000000..6f0550b
--- /dev/null
+++ b/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen.target
@@ -0,0 +1,64 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317054">
+<locations>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.gmf.runtime.sdk.feature.group" version="1.10.0.201606071959"/>
+<repository location="http://download.eclipse.org/modeling/gmp/gmf-runtime/updates/releases"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.papyrus.sdk.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sdk.feature.source.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/main/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.papyrus.extra.dsml.validation.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.extra.dsml.validation.feature.source.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/extra/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<repository location="http://download.eclipse.org/mylyn/drops/3.21.1/v20161129-2023"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.m2m.qvt.oml.sdk.feature.group" version="3.7.0.v20161102-0315"/>
+<unit id="org.eclipse.m2m.qvt.oml.tools.coverage.feature.group" version="1.2.0.v20161102-0315"/>
+<repository location="http://download.eclipse.org/mmt/qvto/updates/milestones/3.7.0"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.uml2.sdk.feature.group" version="5.2.3.v20170227-0935"/>
+<repository location="http://download.eclipse.org/modeling/mdt/uml2/updates/5.2.x"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.equinox.p2.discovery.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.jdt.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.ocl.uml.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.platform.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.rcp.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/releases/oxygen"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.gmf.runtime.notation.sdk.feature.group" version="1.10.0.201606071631"/>
+<repository location="http://download.eclipse.org/modeling/gmp/gmf-notation/updates/releases"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.core.source.feature.feature.group" version="1.5.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.feature.feature.group" version="1.5.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.source.feature.feature.group" version="1.5.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.feature.feature.group" version="1.1.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.source.feature.feature.group" version="1.1.0.201703192131"/>
+<repository location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
+<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
+</location>
+</locations>
+</target>
diff --git a/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/pom.xml b/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/pom.xml
new file mode 100644
index 0000000..94de836
--- /dev/null
+++ b/rsa/releng/main/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/pom.xml
@@ -0,0 +1,13 @@
+<?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.interoperability.rsa.target.parent</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability</groupId>
+ <version>1.4.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen</artifactId>
+ <packaging>eclipse-target-definition</packaging>
+ <name>Interoperability Rsa Oxygen Target Definition</name>
+ <description>This plug-in contains the target definition for Papyrus Interoperability Rsa in Oxygen</description>
+</project>
\ No newline at end of file
diff --git a/rsa/releng/main/targetplatform/pom.xml b/rsa/releng/main/targetplatform/pom.xml
new file mode 100644
index 0000000..f7a68e2
--- /dev/null
+++ b/rsa/releng/main/targetplatform/pom.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.releng</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability</groupId>
+ <version>1.4.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.target.parent</artifactId>
+ <packaging>pom</packaging>
+ <version>1.4.0-SNAPSHOT</version>
+
+ <modules>
+ <module>org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen</module>
+ </modules>
+</project>
\ No newline at end of file
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/.project b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/.project
new file mode 100644
index 0000000..3755ddd
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rpy.p2</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/category.xml b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/category.xml
new file mode 100644
index 0000000..c5702fd
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/category.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+ <feature url="features/org.eclipse.papyrus.interoperability.rpy.feature_0.7.0.qualifier.jar" id="org.eclipse.papyrus.interoperability.rsa.feature" version="1.2.0.qualifier">
+ <category name="org.eclipse.papyrus.category"/>
+ </feature>
+ <feature url="features/org.eclipse.papyrus.interoperability.rpy.feature.source_0.7.0.qualifier.jar" id="org.eclipse.papyrus.interoperability.rsa.feature.source" version="1.2.0.qualifier">
+ <category name="org.eclipse.papyrus.category"/>
+ </feature>
+
+ <category-def name="org.eclipse.papyrus.category" label="Papyrus Rpy Interoperability">
+ <description>
+ Papyrus Rsa Interoperability Category
+ </description>
+ </category-def>
+</site>
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/pom.xml b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/pom.xml
new file mode 100644
index 0000000..fe14fcd
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/pom.xml
@@ -0,0 +1,65 @@
+<?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.interoperability.releng</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability</groupId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../../releng/main/pom.xml</relativePath>
+ </parent>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.p2</artifactId>
+ <packaging>eclipse-repository</packaging>
+ <pluginRepositories>
+ <pluginRepository>
+ <id>jboss-public-repository-group</id>
+ <name>JBoss Public Repository Group</name>
+ <url>http://repository.jboss.org/nexus/content/groups/public/</url>
+ </pluginRepository>
+ </pluginRepositories>
+
+ <build>
+ <plugins>
+ <plugin>
+ <!-- https://github.com/jbosstools/jbosstools-maven-plugins/wiki -->
+ <groupId>org.jboss.tools.tycho-plugins</groupId>
+ <artifactId>repository-utils</artifactId>
+ <version>0.23.2</version>
+ <executions>
+ <execution>
+ <id>generate-facade</id>
+ <phase>package</phase>
+ <goals>
+ <goal>generate-repository-facade</goal>
+ </goals>
+ <configuration>
+ <symbols>
+ <update.site.name>Papyrus Interoperability</update.site.name>
+ <update.site.description>Use this URL in Eclipse to install
+ Papyrus Interoperability</update.site.description>
+ <update.site.version>${project.version}</update.site.version>
+ <project.website>https://hudson.eclipse.org/papyrus/view/Interoperability/job/papyrus-interoperability-website/ws/site-staging/index.html</project.website>
+ <project.issues>${project.issueManagement.url}</project.issues>
+ <eclipse.target>${eclipse.targetrelease}</eclipse.target>
+ <update.site.nightly>https://hudson.eclipse.org/papyrus/view/Interoperability/job/papyrus-interoperability-rsa-oxygen/ws/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/target/repository/</update.site.nightly>
+ </symbols>
+ <associateSites>
+ <site>https://hudson.eclipse.org/papyrus/view/Interoperability/job/papyrus-interoperability-website/ws/site-staging/index.html</site>
+ </associateSites>
+ <siteTemplateFolder>siteTemplate</siteTemplateFolder>
+ <p2StatsUrl>http://download.eclipse.org/stats</p2StatsUrl>
+ </configuration>
+ </execution>
+ </executions>
+ <dependencies>
+ <dependency>
+ <groupId>org.eclipse.tycho</groupId>
+ <artifactId>tycho-packaging-plugin</artifactId>
+ <version>${tycho-version}</version>
+ </dependency>
+ </dependencies>
+ </plugin>
+ </plugins>
+ </build>
+ <description>This plugin defines the update site of Papyrus Interoperability Rsa plugins and feature.</description>
+</project>
\ No newline at end of file
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/publish.README b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/publish.README
new file mode 100644
index 0000000..66b977d
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/publish.README
@@ -0,0 +1,3 @@
+The publish.sh script may be used to publish the build results (update site). The script may be called
+without parameters and prompts for everything it requires for publishing an update site, or it may be
+invoked with respective command line parameters.
\ No newline at end of file
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/publish.sh b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/publish.sh
new file mode 100644
index 0000000..c56ae8f
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/publish.sh
@@ -0,0 +1,403 @@
+#!/bin/sh
+#Based upon Gef4 publish.sh script
+
+#causes the shell to exit if any subcommand or pipeline returns a non-zero status.
+#set -e
+
+# Script may take 10-11 command line parameters:
+# $1: Hudson job name: <name>
+# $2: Hudson build id: <id>
+# $3: Build type: i(ntegration), s(table), r(elease)
+# $4: Whether to promote to an update-site: (y)es, (n)o
+# $5: Whether to merge the site with an existing one: (y)es, (n)o
+# $6: Whether to generate drop files: (y)es, (n)o
+# $7: The release label used to label the drop files and (nested) update site, e.g. 3.10.0 or 3.10.1
+# $8: The eclipse target version, e.g. mars or neon
+# $9: Whether to generate rcp files: (y)es, (n)o
+# $10: Papyrus component
+# $11: An optional release label suffix to be appended to drop files and (nested) update site name, e.g. M1, RC1
+
+#The publish.sh script may be used to publish the build results (update site and drop files and rcp). The script may be called
+#without parameters and prompts for everything it requires for publishing an update site, or it may be
+#invoked with respective command line parameters.
+if [ $# -eq 10 -o $# -eq 11 ];
+then
+ jobName=$1
+ echo "jobName: $jobName"
+ buildId=$2
+ echo "buildId: $buildId"
+ buildType=$3
+ echo "buildType: $buildType"
+ site=$4
+ echo "site: $site"
+ merge=$5
+ echo "merge: $merge"
+ dropFiles=$6
+ echo "dropFiles: $dropFiles"
+ releaseLabel=$7
+ echo "releaseLabel: $releaseLabel"
+ eclipseTarget=$8
+ echo "eclipseTarget: $eclipseTarget"
+ rcpFiles=$9
+ echo "rcpFiles: $rcpFiles"
+ component=${10}
+ echo "component: $component"
+ if [ -n "${11}" ];
+ then
+ releaseLabelSuffix=${11}
+ echo "releaseLabelSuffix: $releaseLabelSuffix"
+ fi
+else
+ if [ $# -ne 0 ];
+ then
+ exit 1
+ fi
+fi
+
+#The root url that enables to find the job with ${hudsonJobRootUrl}/$jobName/$buildId
+hudsonJobRootUrl="https://hudson.eclipse.org/papyrus/job/"
+
+#The localization of the local build target update site
+targetUpdateSite="archive/releng/org.eclipse.papyrus.${component}.p2/target/repository"
+targetRCPRoot="archive/releng/org.eclipse.papyrus.${component}.product/target/products/org.eclipse.papyrus.${component}.product"
+
+#The feature to parse to retrieve the qualifierversion
+feature2Parse4QualifierVersion="org.eclipse.papyrus.${component}.feature"
+
+#The specific localization
+hudsonRoot="/home/data/httpd/download.eclipse.org/"
+
+remoteUpdateSiteRoot="modeling/mdt/papyrus/components/${component}"
+remoteDropDir=${hudsonRoot}/${remoteUpdateSiteRoot}/downloads/drops
+remoteUpdateSite="${hudsonRoot}/${remoteUpdateSiteRoot}/${remoteSite}"
+remoteRcpDir=${hudsonRoot}/${remoteUpdateSiteRoot}/downloads/rcps
+
+
+
+if [ -z "$jobName" ];
+then
+ echo -n "Please enter the name of the Hudson job you want to promote:"
+ read jobName
+fi
+
+if [ -z "$buildId" ];
+then
+ for i in $( find ~/.hudson/jobs/$jobName/builds -type l | sed 's!.*/!!' | sort)
+ do
+ echo -n "$i, "
+ done
+ echo "lastStable, lastSuccessful"
+ echo -n "Please enter the id of the $jobName build you want to promote:"
+ read buildId
+fi
+
+if [ "$buildId" = "lastStable" -o "$buildId" = "lastSuccessful" ];
+then
+ # Reverse lookup the build id (in case lastSuccessful or lastStable was used)
+ for i in $(find ~/.hudson/jobs/$jobName/builds/ -type l)
+ do
+ if [ "$(readlink -f $i)" = "$(readlink -f ~/.hudson/jobs/$jobName/$buildId)" ];
+ then
+ buildId=${i##*/}
+ fi
+ done
+ echo "Reverse lookup (lastStable/lastSuccessful) yielded buildId: $buildId"
+fi
+
+# Determine the local update site we want to publish to
+jobDir=$(readlink -f ~/.hudson/jobs/${jobName}/builds/${buildId})
+if [ ! -d $jobDir ];
+then
+ echo "The specified buildId does not refer to an existing build: $buildId"
+ exit 1
+fi
+
+
+localUpdateSite=${jobDir}/${targetUpdateSite}
+echo "jobDir=${jobDir}"
+echo "targetUpdateSite=${targetUpdateSite}"
+echo "localUpdateSite=${localUpdateSite}"
+
+localRCPSiteRoot=${jobDir}/${targetRCPRoot}
+echo "localRCPSiteRoot=${localRCPSiteRoot}"
+
+echo "Publishing from local update site: $localUpdateSite"
+
+# Select the build type
+if [ -z "$buildType" ];
+then
+ echo -n "Please select which type of build you want to publish to [i(integration), s(table), r(elease)]: "
+ read buildType
+fi
+echo "Publishing as $buildType build"
+
+# check if we are going to promote to an update-site
+if [ -z "$site" ];
+then
+ echo -n "Do you want to promote to an remote update site? [(y)es, (n)o]:"
+ read site
+fi
+if [ "$site" != y -a "$site" != n ];
+then
+ echo "Parameter site has to be 'y'(es) or 'n'(o) but was: $site"
+ exit 0
+fi
+echo "Promoting to remote update site: $site"
+
+if [ "$site" = y ];
+then
+ # Determine remote update site we want to promote to
+ case $buildType in
+ i|I) remoteSite=integration;;
+ s|S) remoteSite=milestones;;
+ r|R) remoteSite=releases;;
+ *)
+ echo "Parameter buildType has to be 'i'(ntegration), 's'(stable), or 'r'(elease), but was: $buildType"
+ exit 1 ;;
+ esac
+
+ echo "Publishing to remote update-site: $remoteUpdateSite"
+
+ if [ -d "$remoteUpdateSite" ];
+ then
+ if [ -z "$merge" ];
+ then
+ echo -n "Do you want to merge with the existing update-site? [(y)es, (n)o]:"
+ read merge
+ fi
+ if [ "$merge" != y -a "$merge" != n ];
+ then
+ echo "Parameter merge has to be 'y'(es) or 'n'(o) but was: $merge"
+ exit 1
+ fi
+ else
+ merge=n
+ fi
+ echo "Merging with existing site: $merge"
+fi
+
+# check if we are going to create drop files
+if [ -z "$dropFiles" ];
+then
+ echo -n "Do you want to create drop files? [(y)es, (n)o]:"
+ read dropFiles
+fi
+if [ "$dropFiles" != y -a "$dropFiles" != n ];
+then
+ echo "Parameter dropFiles has to be 'y'(es) or 'n'(o) but was: $dropFiles"
+ exit 1
+fi
+echo "Generating drop files: $dropFiles"
+
+# Determine releaseLabel
+if [ -z "$releaseLabel" ];
+then
+ echo -n "Please enter release label (e.g. 3.10.0, 3.10.1M2):"
+ read releaseLabel
+fi
+
+# Prepare a temp directory
+mkdir -p target
+cd target
+tmpDir="$jobName-publish-tmp"
+rm -fr $tmpDir
+mkdir -p $tmpDir
+cd $tmpDir
+
+# Download and prepare Eclipse SDK, which is needed to merge update site and postprocess repository
+echo "Downloading eclipse to $PWD"
+
+cp /home/data/httpd/download.eclipse.org/eclipse/downloads/drops4/R-4.5.2-201602121500/eclipse-SDK-4.5.2-linux-gtk-x86_64.tar.gz .
+ls -la
+tar -xzf eclipse-SDK-4.5.2-linux-gtk-x86_64.tar.gz
+cd eclipse
+chmod 700 eclipse
+cd ..
+if [ ! -d "eclipse" ];
+then
+ echo "Failed to download an Eclipse SDK, being needed for provisioning."
+ exit
+fi
+# Prepare Eclipse SDK to provide WTP releng tools (used to postprocess repository, i.e set p2.mirrorsURL property)
+echo "Installing WTP Releng tools"
+./eclipse/eclipse -nosplash --launcher.suppressErrors -clean -debug -application org.eclipse.equinox.p2.director -repository http://download.eclipse.org/webtools/releng/repository/ -installIUs org.eclipse.wtp.releng.tools.feature.feature.group
+# Clean up
+echo "Cleaning up"
+rm eclipse-SDK-4.5.2-linux-gtk-x86_64.tar.gz
+
+# Generate drop files
+if [ "$dropFiles" = y ];
+ then
+
+ # Prepare local update site (for drop files)
+ mkdir -p update-site
+ cp -R $localUpdateSite/* update-site/
+ echo "Copied $localUpdateSite to local directory update-site."
+
+ qualifiedVersion=$(find update-site/features/ -maxdepth 1 | grep "${feature2Parse4QualifierVersion}")
+ qualifiedVersion=${qualifiedVersion%.jar}
+ qualifiedVersion=${qualifiedVersion#*_}
+ qualifier=${qualifiedVersion##*.}
+ dropDir="${releaseLabel}/$(echo $buildType | tr '[:lower:]' '[:upper:]')$qualifier"
+ localDropDir=drops/$dropDir
+ echo "Creating drop files in local directory $localDropDir"
+ mkdir -p $localDropDir
+
+ cd update-site
+ zip -r ../$localDropDir/${component}-Update-${releaseLabel}${releaseLabelSuffix}.zip features plugins artifacts.jar content.jar
+ md5sum ../$localDropDir/${component}-Update-${releaseLabel}${releaseLabelSuffix}.zip > ../$localDropDir/${component}-Update-${releaseLabel}${releaseLabelSuffix}.zip.md5
+ echo "Created ${component}-Update-Site-${releaseLabel}${releaseLabelSuffix}.zip"
+ cd ..
+
+ # Cleanup local update site (for drop files generation)
+ rm -fr update-site
+
+ #generating build.cfg file to be referenced from downloads web page
+ echo "generating build.cfg file to be referenced from downloads web page"
+ echo "hudson.job.name=$jobName" > $localDropDir/build.cfg
+ echo "hudson.job.id=$buildId (${jobDir##*/})" >> $localDropDir/build.cfg
+ echo "hudson.job.url= ${hudsonJobRootUrl}/$jobName/$buildId" >> $localDropDir/build.cfg
+
+ mkdir -p $remoteDropDir
+ cp -R $localDropDir/* $remoteDropDir/
+
+fi
+
+# Generate RCP files
+if [ "$rcpFiles" = y ];
+ then
+
+ # Prepare local rcp site (for rcp files)
+ mkdir -p rcp-site
+ cp ${localRCPSiteRoot}-linux.gtk.x86_64.zip rcp-site/org.eclipse.papyrus.${component}.product-${releaseLabel}-${releaseLabelSuffix}-linux.gtk.x86_64.zip
+ echo "Copied ${localRCPSiteRoot}-linux.gtk.x86_64.zip to local directory rcp-site."
+
+ qualifiedVersion=$(find update-site/features/ -maxdepth 1 | grep "${feature2Parse4QualifierVersion}")
+ qualifiedVersion=${qualifiedVersion%.jar}
+ qualifiedVersion=${qualifiedVersion#*_}
+ qualifier=${qualifiedVersion##*.}
+ dropDir="${releaseLabel}/$(echo $buildType | tr '[:lower:]' '[:upper:]')$qualifier"
+
+ localRcpDir=rcps/$dropDir
+ echo "Creating rcp files in local directory $localRcpDir"
+ mkdir -p $localRcpDir
+
+ cd rcp-site
+ cp * ../$localRcpDir/
+
+ echo "Created org.eclipse.papyrus.${component}.product-${releaseLabel}-${releaseLabelSuffix}-linux.gtk.x86_64.zip in ../$localRcpDir/"
+ cd ..
+
+ # Cleanup local update site (for drop files generation)
+ rm -fr rcp-site
+
+ mkdir -p ${remoteRcpDir}/${eclipseTarget}/${releaseLabel}
+ cp -R $localRcpDir/* $remoteRcpDir/${eclipseTarget}/${releaseLabel}/
+
+fi
+
+if [ "$site" = y ];
+then
+ mkdir -p update-site
+ updateSiteLabel=${releaseLabel}${releaseLabelSuffix}_${jobName}_${buildId}
+ # Prepare composite local update site (transfer into composite if needed)
+ if [ "$merge" = y ];
+ then
+ # check if the remote site is a composite update site
+ echo "Merging existing site into local one."
+ if [ -e "$remoteUpdateSite/compositeArtifacts.xml" ];
+ then
+ cp -R $remoteUpdateSite/* update-site/
+ else
+ mkdir -p update-site/pre_${updateSiteLabel}
+ cp -R $remoteUpdateSite/* update-site/pre_${updateSiteLabel}/
+ fi
+ else
+ echo "Skipping merge operation."
+ fi
+ # move local update site below composite one
+ mkdir -p update-site/${updateSiteLabel}
+ cp -R $localUpdateSite/* update-site/${updateSiteLabel}/
+
+ cd update-site
+ children=$(find . -maxdepth 1 -type d -print | wc -l)
+ children=$(($children-1))
+ timestamp=$(date +%s000)
+
+content="
+<?xml version='1.0' encoding='UTF-8'?>
+<?compositeMetadataRepository version='1.0.0'?>
+<repository name='${component} ${remoteSite}' type='org.eclipse.equinox.internal.p2.metadata.repository.CompositeMetadataRepository' version='1.0.0'>
+<properties size='1'>
+<property name='p2.timestamp' value='${timestamp}'/>
+</properties>
+<children size='${children}'>
+$(
+for file in *; do
+ if [ -d $file ]; then
+printf "<child location='${file}'/>"
+ fi
+done
+)
+</children>
+</repository>
+"
+ echo $content > compositeContent.xml
+
+artifact="
+<?xml version='1.0' encoding='UTF-8'?>
+<?compositeArtifactRepository version='1.0.0'?>
+<repository name='${component} ${remoteSite}' type='org.eclipse.equinox.internal.p2.artifact.repository.CompositeArtifactRepository' version='1.0.0'>
+<properties size='1'>
+<property name='p2.timestamp' value='${timestamp}'/>
+</properties>
+<children size='${children}'>
+$(
+for file in *; do
+ if [ -d $file ]; then
+printf "<child location='${file}'/>"
+ fi
+done
+)
+</children>
+</repository>
+"
+ echo $artifact > compositeArtifacts.xml
+
+ cd ..
+
+ # Ensure p2.mirrorURLs property is used in update site
+ echo "Updating p2.mirrorURLs property."
+ ./eclipse/eclipse -nosplash --launcher.suppressErrors -clean -debug -application org.eclipse.wtp.releng.tools.addRepoProperties -vmargs -DartifactRepoDirectory=$PWD/update-site/${updateSiteLabel} -Dp2MirrorsURL="http://www.eclipse.org/downloads/download.php?format=xml&file=/${remoteUpdateSiteRoot}/${remoteSite}/${updateSiteLabel}"
+
+ # Create p2.index file
+ if [ ! -e "update-site/p2.index" ];
+ then
+ echo "Creating p2.index file."
+ echo "version = 1" > update-site/p2.index
+ echo "metadata.repository.factory.order=compositeContent.xml,\!" >> update-site/p2.index
+ echo "artifact.repository.factory.order=compositeArtifacts.xml,\!" >> update-site/p2.index
+ fi
+
+ # Backup then clean remote update site
+ echo "Creating backup of remote update site."
+ if [ -d "$remoteUpdateSite" ];
+ then
+ if [ -d BACKUP ];
+ then
+ rm -fr BACKUP
+ fi
+ mkdir BACKUP
+ cp -R $remoteUpdateSite/* BACKUP/
+ rm -fr $remoteUpdateSite
+ fi
+
+ echo "Publishing contents of local update-site directory to remote update site $remoteUpdateSite"
+ mkdir -p $remoteUpdateSite
+ cp -R update-site/* $remoteUpdateSite/
+fi
+
+# Clean up
+echo "Cleaning up"
+rm -fr eclipse
+rm -fr update-site
\ No newline at end of file
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/index.html b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/index.html
new file mode 100644
index 0000000..0c1cd2c
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/index.html
@@ -0,0 +1,107 @@
+<html>
+<head>
+<title>${update.site.name} Update Site: ${update.site.version}</title>
+<link rel="stylesheet" type="text/css" href="web/site.css">
+</head>
+<body marginheight="0" marginwidth="0" leftmargin="0" topmargin="0">
+<center>
+<table cellspacing="0" cellpadding="0" class="table">
+ <tr>
+ <td colspan="3" class="td_header"> </td>
+ </tr>
+ <tr>
+ <td>      </td>
+ <td>      </td>
+ <td>      </td>
+ </tr>
+ <tr>
+ <td>      </td>
+ <td>
+ <h2 class="title">${update.site.name} Update Site</h2>
+ <table width="100%">
+ <tr class="header">
+ <td class="sub-header" width="100%"><span>Latest Build: ${update.site.version}</span></td>
+ </tr>
+
+ <tr class="light-row" style="height: 30px">
+ <td class="bodyText">
+ <p class="bodyText">This is the <b>${update.site.description}</b>
+ Update Site for ${update.site.name}.
+ <blockquote style="border: 1px dashed #1778be; padding: 2px">
+ <ol>
+ <li>To install
+ from this site, start up Eclipse ${eclipse.target}, then do:
+ <ul>
+ <code><strong>Help > Install New Software... ></strong></code>
+ </ul>
+ </li>
+ <li>Copy this site's URL into Eclipse, and hit Enter.</li>
+ <li>When the site loads, select the features to install,
+ or click the <code><strong>Select All</strong></code> button.</li>
+ <li>To properly resolve all dependencies, check
+ <ul><code><strong>[x] Contact all update sites during install to find required software</strong></code></ul>
+
+ <li>Click <code><strong>Next</strong></code>, agree to the license
+ terms, and install.</li>
+ </p>
+ </ol>
+ </blockquote>
+ </td>
+ </tr>
+ </table>
+ </td>
+ <td>      </td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>
+ ${site.contents}
+ </td>
+ <td></td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>
+ <table width="100%">
+ <tr class="header">
+ <td class="sub-header" width="100%"><span> More informations</span></td>
+ </tr>
+ <tr class="light-row" style="height: 30px">
+ <td class="bodyText">
+ <h4>Documentation</h4>
+ <p class="bodyText">You can check here the web site <a href="${project.website}">documentation</a>.</p>
+ <br />
+
+ </td>
+ </tr>
+
+ <tr class="dark-row" style="height: 30px">
+ <td class="bodyText">
+ <h4>Report issues</h4>
+
+ <p>We'd greatly
+ appreciate the assistance in testing and <a
+ href="${project.issues}">reporting of
+ issues in our issue tracker</a>.</p><br/>
+
+ </td>
+ </tr>
+
+ <tr class="light-row" style="height: 30px">
+ <td class="bodyText">
+ <h4>Nightly Builds</h4>
+
+ <p>The <a
+ href="${update.site.nightly}">bleeding
+ edge</a> contains the latest and greatest new features, but nothing is
+ stable or guaranteed - yet. If you're using a Milestone and need a
+ fix, you can update to the latest Nightly, or wait for the next
+ Milestone.</p><br/>
+ </td>
+ </tr>
+ </table>
+ </td>
+ </tr>
+</table>
+</center>
+</html>
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/web/img/rsa-banner.png b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/web/img/rsa-banner.png
new file mode 100644
index 0000000..2797993
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/web/img/rsa-banner.png
Binary files differ
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/web/site.css b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/web/site.css
new file mode 100644
index 0000000..e3d2042
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/web/site.css
@@ -0,0 +1,82 @@
+<
+STYLE type ="text/css">td.spacer {
+ padding-bottom: 10px;
+ padding-top: 10px;
+}
+
+.title {
+ font-family: sans-serif;
+ color: #1778be;
+}
+
+.table {
+ margin-top: 0px;
+ margin-left: 0px;
+ width: 920px;
+}
+
+.bodyText {
+ font-family: sans-serif;
+ font-size: 9pt;
+ color: #000000;
+ width: 100%
+}
+
+.sub-header {
+ background: url('http://download.eclipse.org/eclipse.org-common/themes/solstice/public/images/template/breadcrumbs-large-bg.jpg') center #1b1732;
+ background-size: 100%;
+ color: #fff;
+ text-align: center;
+}
+
+.log-text {
+ font-family: sans-serif;
+ font-style: normal;
+ font-weight: lighter;
+ font-size: 8pt;
+ color: black;
+}
+
+.big-header {
+ font-family: sans-serif;
+ font-style: normal;
+ font-weight: bold;
+ font-size: 9pt;
+ color: white;
+ border-top: 10px solid white;
+}
+
+.light-row {
+ background: #FFFFFF
+}
+
+.dark-row {
+ background: #EEEEEE
+}
+
+.header {
+ background: #445562
+}
+
+#indent {
+ word-wrap: break-word;
+ width: 300px;
+ text-indent: 10px;
+}
+
+.link {
+ color: #187dc6;
+}
+
+.td_header {
+ background: url("img/rsa-banner.png") 0 no-repeat;
+ height: 100px;
+}
+
+.column-header {
+ font-size:small;
+}
+
+</
+STYLE
+>
\ No newline at end of file
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/xslt/site.properties.xsl b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/xslt/site.properties.xsl
new file mode 100644
index 0000000..127c98d
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/xslt/site.properties.xsl
@@ -0,0 +1,20 @@
+<xsl:stylesheet version="2.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xalan="http://xml.apache.org/xalan"
+ xmlns:saxon="http://saxon.sf.net/" xmlns="http://www.w3.org/1999/xhtml"
+ extension-element-prefixes="saxon">
+ <xsl:output method="text" indent="yes" />
+ <xsl:template match="/site">
+ <xsl:for-each select="category-def">
+ <xsl:sort select="@name" />
+ <xsl:variable name="catg"><xsl:value-of select="@name"/></xsl:variable>
+#
+<xsl:value-of select="$catg" />.category.features = \
+<xsl:for-each select="//feature">
+ <xsl:sort select="@id" />
+ <xsl:if test="count(./category[contains(@name,$catg)])>0"><xsl:value-of select="@id" />,
+</xsl:if>
+ </xsl:for-each>
+ </xsl:for-each>
+#
+ </xsl:template>
+</xsl:stylesheet>
diff --git a/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/xslt/site.xsl b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/xslt/site.xsl
new file mode 100644
index 0000000..235f683
--- /dev/null
+++ b/rsa/releng/org.eclipse.papyrus.interoperability.rsa.p2/siteTemplate/xslt/site.xsl
@@ -0,0 +1,128 @@
+<xsl:stylesheet version="2.0"
+ xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xalan="http://xml.apache.org/xalan"
+ xmlns:saxon="http://saxon.sf.net/" xmlns="http://www.w3.org/1999/xhtml"
+ extension-element-prefixes="saxon">
+ <xsl:output method="html" indent="yes" />
+ <xsl:template match="/site">
+ <table cellspacing="2" cellpadding="0" border="0">
+ <xsl:if test="count(feature[contains(@id,'papyrus')])>0">
+ <tr style="background-color:#DDDDDD">
+ <th class="column-header">Feature</th>
+ <th class="column-header">Version</th>
+ <th class="column-header">Feature Categor(ies)</th>
+ </tr>
+ <!-- papyrus features -->
+ <xsl:for-each select="feature[contains(@id,'papyrus')]">
+ <xsl:sort select="@id" />
+ <xsl:variable name="rowCol">
+ <xsl:if test="position() mod 2 = 1">
+ #EEEEEE
+ </xsl:if>
+ <xsl:if test="position() mod 2 = 0">
+ #FFFFFF
+ </xsl:if>
+ </xsl:variable>
+
+ <tr style="background-color:{$rowCol}">
+ <td class="rowLine">
+ <a href="{@url}" style="font-size:x-small">
+ <xsl:value-of select="@id" />
+ </a>
+ </td>
+ <td>
+ <span style="font-size:x-small">
+ <xsl:value-of select="@version" />
+ </span>
+ </td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="category">
+ <xsl:for-each select="category">
+ <span style="font-size:x-small">
+ |
+ <xsl:value-of select="@name" />
+ </span>
+ </xsl:for-each>
+ </xsl:when>
+ </xsl:choose>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </xsl:if>
+ <!-- xsl:if test="count(feature[not(contains(@id,'papyrus'))])>0">
+ <tr style="background-color:#DDDDDD">
+ <th class="column-header">Feature</th>
+ <th class="column-header">Version</th>
+ <th class="column-header">Feature Categor(ies)</th>
+ </tr>
+ <xsl:for-each select="feature[not(contains(@id,'papyrus'))]">
+ <xsl:sort select="@id" />
+ <xsl:variable name="rowCol">
+ <xsl:if test="position() mod 2 = 1">
+ #EEEEEE
+ </xsl:if>
+ <xsl:if test="position() mod 2 = 0">
+ #FFFFFF
+ </xsl:if>
+ </xsl:variable>
+
+ <tr style="background-color:{$rowCol}">
+ <td class="rowLine">
+ <a href="{@url}" style="font-size:x-small">
+ <xsl:value-of select="@id" />
+ </a>
+ </td>
+ <td>
+ <span style="font-size:x-small">
+ <xsl:value-of select="@version" />
+ </span>
+ </td>
+ <td>
+ <xsl:choose>
+ <xsl:when test="category">
+ <xsl:for-each select="category">
+ <span style="font-size:x-small">
+ |
+ <xsl:value-of select="@name" />
+ </span>
+ </xsl:for-each>
+ </xsl:when>
+ </xsl:choose>
+ </td>
+ </tr>
+ </xsl:for-each>
+ </xsl:if-->
+
+ <tr style="background-color:#DDDDDD">
+ <th class="column-header">Feature</th>
+ <th class="column-header">Version</th>
+ <th class="column-header">Feature Categor(ies)</th>
+ </tr>
+ <tr style="background-color:#EEEEEE">
+ <td class="rowLine" colspan="1">
+ <a href="artifacts.jar" style="font-size:x-small">artifacts.jar</a>
+ ::
+ <a href="content.jar" style="font-size:x-small">content.jar</a>
+ </td>
+ <td class="rowLine" colspan="1">
+ ::
+ <a href="plugins/" style="font-size:x-small">plugins</a>
+ <xsl:if test="count(feature)>0">
+ ::
+ <a href="features/" style="font-size:x-small">features</a>
+ </xsl:if>
+ </td>
+ <td class="rowLine" colspan="1">
+ <xsl:if test="count(feature[contains(@id,'papyrus')])>0">
+ <a href="category.xml" style="font-size:x-small">category.xml</a>
+ ::
+ <a href="buildinfo.json" style="font-size:x-small">buildinfo.json</a>
+ ::
+ <a href="site.properties" style="font-size:x-small">site.properties</a>
+ </xsl:if>
+ </td>
+ </tr>
+ </table>
+ <br />
+ </xsl:template>
+</xsl:stylesheet>
diff --git a/rsa/releng/tests/pom.xml b/rsa/releng/tests/pom.xml
new file mode 100644
index 0000000..3c1c7bb
--- /dev/null
+++ b/rsa/releng/tests/pom.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<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.interoperability.tests</groupId>
+ <artifactId>org.eclipse.papyrus.interoperability.tests.releng</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../../releng/tests/pom.xml</relativePath>
+ </parent>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.tests.releng</artifactId>
+ <version>1.4.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+ <modules>
+ <module>targetplatform</module>
+ </modules>
+</project>
diff --git a/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/.project b/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/.project
new file mode 100644
index 0000000..ac68f8c
--- /dev/null
+++ b/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rsa.tests.targetplatform.oxygen</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.m2e.core.maven2Builder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.m2e.core.maven2Nature</nature>
+ </natures>
+</projectDescription>
diff --git a/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen.target b/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen.target
new file mode 100644
index 0000000..ac8a91e
--- /dev/null
+++ b/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen.target
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317046">
+<locations>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.gmf.runtime.sdk.feature.group" version="1.10.0.201606071959"/>
+<repository location="http://download.eclipse.org/modeling/gmp/gmf-runtime/updates/releases"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<repository location="http://download.eclipse.org/mylyn/drops/3.21.1/v20161129-2023"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.uml2.sdk.feature.group" version="5.2.3.v20170227-0935"/>
+<repository location="http://download.eclipse.org/modeling/mdt/uml2/updates/5.2.x"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.papyrus.extra.dsml.validation.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.extra.dsml.validation.feature.source.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/extra/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.gmf.runtime.notation.sdk.feature.group" version="1.10.0.201606071631"/>
+<repository location="http://download.eclipse.org/modeling/gmp/gmf-notation/updates/releases"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.m2m.qvt.oml.sdk.feature.group" version="3.7.0.v20161102-0315"/>
+<unit id="org.eclipse.m2m.qvt.oml.tools.coverage.feature.group" version="1.2.0.v20161102-0315"/>
+<repository location="http://download.eclipse.org/mmt/qvto/updates/milestones/3.7.0"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.papyrus.sdk.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sdk.feature.source.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/main/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.papyrus.junit.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.junit.feature.source.feature.group" version="0.0.0"/>
+<repository location="https://hudson.eclipse.org/papyrus/view/Oxygen%20(Master)/job/Papyrus-Master-Developer/lastSuccessfulBuild/artifact/repository/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.equinox.p2.discovery.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.jdt.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.ocl.uml.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.platform.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.rcp.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.emf.compare.ide.ui.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/releases/oxygen"/>
+</location>
+<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.core.source.feature.feature.group" version="1.5.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.feature.feature.group" version="1.5.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.source.feature.feature.group" version="1.5.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.feature.feature.group" version="1.1.0.201703192131"/>
+<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.source.feature.feature.group" version="1.1.0.201703192131"/>
+<repository id="nattable" location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
+<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
+</location>
+</locations>
+</target>
diff --git a/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/pom.xml b/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/pom.xml
new file mode 100644
index 0000000..6a7ed6c
--- /dev/null
+++ b/rsa/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen/pom.xml
@@ -0,0 +1,13 @@
+<?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.interoperability.rsa.tests.target.parent</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <version>1.4.0-SNAPSHOT</version>
+ </parent>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen</artifactId>
+ <packaging>eclipse-target-definition</packaging>
+ <name>Interoperability Rsa Oxygen Target Definition</name>
+ <description>This plug-in contains the target definition for Papyrus Interoperability Rsa in Oxygen</description>
+</project>
\ No newline at end of file
diff --git a/rsa/releng/tests/targetplatform/pom.xml b/rsa/releng/tests/targetplatform/pom.xml
new file mode 100644
index 0000000..b0b823b
--- /dev/null
+++ b/rsa/releng/tests/targetplatform/pom.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+
+ <parent>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.tests.releng</artifactId>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <version>1.4.0-SNAPSHOT</version>
+ </parent>
+
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.tests.target.parent</artifactId>
+ <packaging>pom</packaging>
+ <version>1.4.0-SNAPSHOT</version>
+
+ <modules>
+ <module>org.eclipse.papyrus.interoperability.rsa.targetplatform.oxygen</module>
+ </modules>
+</project>
\ No newline at end of file
diff --git a/rsa/tests/.gitkeep b/rsa/tests/.gitkeep
deleted file mode 100755
index e69de29..0000000
--- a/rsa/tests/.gitkeep
+++ /dev/null
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.classpath b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.classpath
new file mode 100644
index 0000000..eca7bdb
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.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-1.8"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.project b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.project
new file mode 100644
index 0000000..ef7fe6e
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>org.eclipse.papyrus.interoperability.rsa.tests</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/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.settings/org.eclipse.jdt.core.prefs b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..b3aa6d6
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,291 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+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/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.settings/org.eclipse.jdt.ui.prefs b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..954281d
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,68 @@
+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
+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 v1.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-v10.html\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>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/META-INF/MANIFEST.MF b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..eefc762
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/META-INF/MANIFEST.MF
@@ -0,0 +1,48 @@
+Manifest-Version: 1.0
+Require-Bundle: org.eclipse.core.runtime,
+ org.eclipse.uml2.uml,
+ org.eclipse.emf;bundle-version="2.6.0",
+ org.eclipse.m2m.qvt.oml;bundle-version="3.4.0",
+ org.eclipse.papyrus.infra.core.log;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.papyrus.infra.gmfdiag.css;bundle-version="[2.1.0,3.0.0)",
+ org.eclipse.papyrus.interoperability.rsa;bundle-version="1.4.0",
+ org.eclipse.ui;bundle-version="3.106.0",
+ org.junit;bundle-version="4.11.0",
+ org.eclipse.papyrus.interoperability.common;bundle-version="[0.7.0,1.0.0)",
+ org.eclipse.papyrus.interoperability.common.blackboxes;bundle-version="[0.7.0,1.0.0)",
+ org.eclipse.papyrus.junit.utils;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.infra.core;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.emf;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.core.resources,
+ org.eclipse.ui.workbench,
+ org.eclipse.ui.ide,
+ org.eclipse.papyrus.uml.diagram.clazz;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.gmf.runtime.notation.edit,
+ org.eclipse.gmf.runtime.emf.core,
+ org.eclipse.papyrus.uml.diagram.common;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.gmfdiag.commands;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.gmf.runtime.emf.commands.core;bundle-version="1.7.0",
+ org.eclipse.emf.ecore,
+ org.eclipse.papyrus.uml.tools;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.emf.common,
+ org.eclipse.core.commands,
+ org.eclipse.emf.transaction,
+ org.eclipse.uml2.uml.resources,
+ org.eclipse.papyrus.infra.core.sasheditor;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.gef,
+ org.eclipse.papyrus.uml.extensionpoints;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.papyrus.junit.framework;bundle-version="[1.2.0,2.0.0)",
+ org.eclipse.papyrus.infra.ui;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.uml.diagram.composite;bundle-version="[3.0.0,4.0.0)",
+ com.google.guava;bundle-version="21.0.0"
+Export-Package: org.eclipse.papyrus.interoperability.rsa.tests,
+ org.eclipse.papyrus.interoperability.rsa.tests.qvt
+Bundle-Vendor: Eclipse Modeling Project
+Bundle-ActivationPolicy: lazy
+Bundle-Version: 1.4.0.qualifier
+Bundle-Name: Model import interoperability Tests (Incubation)
+Bundle-ManifestVersion: 2
+Bundle-Activator: org.eclipse.papyrus.interoperability.rsa.tests.Activator
+Bundle-SymbolicName: org.eclipse.papyrus.interoperability.rsa.tests;singleton:=true
+Bundle-RequiredExecutionEnvironment: JavaSE-1.8
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/about.html b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/about.html
new file mode 100644
index 0000000..3ce4e7e
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/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 20, 2008</p>
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in ("Content"). Unless otherwise
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 1.0 ("EPL"). A copy of the EPL is available
+at <a href="http://www.eclipse.org/legal/epl-v10.html">http://www.eclipse.org/legal/epl-v10.html</a>.
+For purposes of the EPL, "Program" 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 ("Redistributor") 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>
\ No newline at end of file
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/build.properties b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/build.properties
new file mode 100644
index 0000000..990e49f
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/build.properties
@@ -0,0 +1,9 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+ .,\
+ about.html,\
+ resources/,\
+ deployedProfile/,\
+ plugin.xml
+src.includes = about.html
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileReferences.profile.uml b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileReferences.profile.uml
new file mode 100644
index 0000000..0fa8227
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileReferences.profile.uml
@@ -0,0 +1,212 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_M1c60L3BEeSCx5YnPkDiBQ" name="Profile" metamodelReference="_M7ji0b3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M72dwb3BEeSCx5YnPkDiBQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <contents xmi:type="ecore:EPackage" xmi:id="_-Lqxgb3BEeSCx5YnPkDiBQ" name="Profile" nsURI="http:///schemas/Profile/_-LqxgL3BEeSCx5YnPkDiBQ/1" nsPrefix="Profile">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_-Lqxgr3BEeSCx5YnPkDiBQ" name="Stereotype1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-Lqxg73BEeSCx5YnPkDiBQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_OthPsL3BEeSCx5YnPkDiBQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_-LqxhL3BEeSCx5YnPkDiBQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-Lqxhr3BEeSCx5YnPkDiBQ" name="attribute1" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-LqxiL3BEeSCx5YnPkDiBQ" name="attribute2" 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="_-Lqxir3BEeSCx5YnPkDiBQ" name="attribute3" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_-LqxjL3BEeSCx5YnPkDiBQ" name="class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_-Lqxjr3BEeSCx5YnPkDiBQ" name="Stereotype2">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-Lqxj73BEeSCx5YnPkDiBQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_O09UcL3BEeSCx5YnPkDiBQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_-LqxkL3BEeSCx5YnPkDiBQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-Lqxkr3BEeSCx5YnPkDiBQ" name="attribute1" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-LqxlL3BEeSCx5YnPkDiBQ" name="attribute2" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_-Lqxlr3BEeSCx5YnPkDiBQ" name="attribute3" 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="_-LqxmL3BEeSCx5YnPkDiBQ" name="class" ordered="false" upperBound="-1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_M72dwr3BEeSCx5YnPkDiBQ" name="Profile" nsURI="http:///schemas/Profile/_M72dwL3BEeSCx5YnPkDiBQ/0" nsPrefix="Profile"/>
+ </eAnnotations>
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_M7ji0L3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-Lqxmr3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-Lqxm73BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_M7ji0b3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-LqxnL3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-Lqxnb3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_OthPsL3BEeSCx5YnPkDiBQ" name="Stereotype1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-Lqxnr3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-Lqxn73BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_QGLrwr3BEeSCx5YnPkDiBQ" name="base_Class" association="_QGLrwL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-LqxoL3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-Lqxob3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_RHpv0L3BEeSCx5YnPkDiBQ" name="attribute1" visibility="public">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-Lqxor3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-Lqxo73BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_RJSHgL3BEeSCx5YnPkDiBQ" name="attribute2" visibility="public">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-LqxpL3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0igL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_RK7GQL3BEeSCx5YnPkDiBQ" name="attribute3" visibility="public">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0igb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0igr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_rpoZsb3BEeSCx5YnPkDiBQ" name="class" visibility="public" association="_rpoZsL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ig73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ihL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rpoZsr3BEeSCx5YnPkDiBQ" value="1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ih73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0iiL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </lowerValue>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rpoZs73BEeSCx5YnPkDiBQ" value="1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ihb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ihr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </upperValue>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_O09UcL3BEeSCx5YnPkDiBQ" name="Stereotype2">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0iib3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0iir3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_QTIior3BEeSCx5YnPkDiBQ" name="base_Class" association="_QTIioL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ii73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ijL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_QtduML3BEeSCx5YnPkDiBQ" name="attribute1" visibility="public">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ijb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ijr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Qw41oL3BEeSCx5YnPkDiBQ" name="attribute2" visibility="public">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ij73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ikL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_QxB_kL3BEeSCx5YnPkDiBQ" name="attribute3" visibility="public">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ikb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ikr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_wnQxUb3BEeSCx5YnPkDiBQ" name="class" visibility="public" association="_wnQxUL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ik73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ilL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_wnQxUr3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0il73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0imL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </lowerValue>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_wnQxU73BEeSCx5YnPkDiBQ" value="*">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ilb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ilr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </upperValue>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_QGLrwL3BEeSCx5YnPkDiBQ" name="Class_Stereotype1" memberEnd="_QGLrwb3BEeSCx5YnPkDiBQ _QGLrwr3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0imb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0imr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_QGLrwb3BEeSCx5YnPkDiBQ" name="extension_Stereotype1" type="_OthPsL3BEeSCx5YnPkDiBQ" aggregation="composite" association="_QGLrwL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0im73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0inL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_QTIioL3BEeSCx5YnPkDiBQ" name="Class_Stereotype2" memberEnd="_QTIiob3BEeSCx5YnPkDiBQ _QTIior3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0inb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0inr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_QTIiob3BEeSCx5YnPkDiBQ" name="extension_Stereotype2" type="_O09UcL3BEeSCx5YnPkDiBQ" aggregation="composite" association="_QTIioL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0in73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ioL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_rpoZsL3BEeSCx5YnPkDiBQ" memberEnd="_rpoZsb3BEeSCx5YnPkDiBQ _rpoZtL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0iob3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ior3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_rpoZtL3BEeSCx5YnPkDiBQ" name="stereotype1" visibility="private" type="_OthPsL3BEeSCx5YnPkDiBQ" association="_rpoZsL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0io73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ipL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rpoZtb3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ip73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0iqL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </lowerValue>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_rpoZtr3BEeSCx5YnPkDiBQ" value="1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ipb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0ipr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </upperValue>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_wnQxUL3BEeSCx5YnPkDiBQ" memberEnd="_wnQxUb3BEeSCx5YnPkDiBQ _wnQxVL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0iqb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0iqr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:Property" xmi:id="_wnQxVL3BEeSCx5YnPkDiBQ" name="stereotype2" visibility="private" type="_O09UcL3BEeSCx5YnPkDiBQ" association="_wnQxUL3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0iq73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0irL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_wnQxVb3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0ir73BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0isL3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </lowerValue>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_wnaiUL3BEeSCx5YnPkDiBQ" value="1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-L0irb3BEeSCx5YnPkDiBQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-L0irr3BEeSCx5YnPkDiBQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </upperValue>
+ </ownedEnd>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_M7ji0r3BEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_M7ji073BEeSCx5YnPkDiBQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/dsmlvalidation#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://DSMLValidation_PROFILES/PapyrusValidationRuleDSML.uml#__sUW0OhNEeCjcc2EgK3Uwg"/>
+ </profileApplication>
+</uml:Profile>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileUpdates.profile.uml b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileUpdates.profile.uml
new file mode 100644
index 0000000..f435199
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileUpdates.profile.uml
@@ -0,0 +1,195 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_vfjmUJdJEeSUisRPbTY3hA" name="ProfileUpdates" metamodelReference="_vlvt4JdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vmdfkJdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <contents xmi:type="ecore:EPackage" xmi:id="_Edh1EZdKEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_Edh1EJdKEeSUisRPbTY3hA/4" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Edh1EpdKEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Edh1E5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Edh1FJdKEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Edh1FpdKEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Edh1F5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Edh1GJdKEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Edh1GpdKEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Edh1G5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Edh1HJdKEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Edh1HpdKEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <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="_BVwy4ZdKEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_BVwy4JdKEeSUisRPbTY3hA/3" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_BVxZ8JdKEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVxZ8ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_BVxZ8pdKEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_BVxZ9JdKEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVxZ9ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_BVxZ9pdKEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_BVxZ-JdKEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVxZ-ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_BVxZ-pdKEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_BVxZ_JdKEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <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="_40zecZdJEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_40zecJdJEeSUisRPbTY3hA/2" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_40zecpdJEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_40zec5dJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_40zedJdJEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <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="_40zedpdJEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_40zed5dJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_40zeeJdJEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_40zeepdJEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_40zefJdJEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_40zefZdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_40zefpdJEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_4WLowJdJEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_4WLBsJdJEeSUisRPbTY3hA/1" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_4WLowZdJEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4WLowpdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_4WLow5dJEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <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="_4WLoxZdJEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4WLoxpdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_4WLox5dJEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_4WLoyZdJEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_4WLoy5dJEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4WLozJdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_4WLozZdJEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_vmdfkZdJEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_vmc4gJdJEeSUisRPbTY3hA/0" nsPrefix="ProfileUpdates"/>
+ </eAnnotations>
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_vlt4sJdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4WMP0JdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4WMP0ZdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_vlvt4JdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4WMP0pdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4WMP05dJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_x-fG4JdJEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4WMP1JdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4WMP1ZdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_BAKWUpdKEeSUisRPbTY3hA" name="base_Package" association="_BAKWUJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVxZ_pdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyBAJdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Package"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_yDlCQJdJEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4WM24ZdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4WM24pdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_A2yX4JdKEeSUisRPbTY3hA" name="base_Interface" association="_A2xw0JdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyBAZdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyBApdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interface"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_yJKF0JdJEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_4WM255dJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4WM26JdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Adg8QJdKEeSUisRPbTY3hA" name="base_Property" association="_AdgVMJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyBA5dKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyBBJdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_AroQwJdKEeSUisRPbTY3hA" name="base_Class" association="_ArnpsJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyBBZdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyBBpdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_AdgVMJdKEeSUisRPbTY3hA" name="Property_Stereotype3" memberEnd="_AdgVMZdKEeSUisRPbTY3hA _Adg8QJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyBB5dKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyBCJdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_AdgVMZdKEeSUisRPbTY3hA" name="extension_Stereotype3" type="_yJKF0JdJEeSUisRPbTY3hA" aggregation="composite" association="_AdgVMJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyBCZdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyBCpdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_ArnpsJdKEeSUisRPbTY3hA" name="Class_Stereotype3" memberEnd="_ArnpsZdKEeSUisRPbTY3hA _AroQwJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyBC5dKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyBDJdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_ArnpsZdKEeSUisRPbTY3hA" name="extension_Stereotype3" type="_yJKF0JdJEeSUisRPbTY3hA" aggregation="composite" association="_ArnpsJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyoEJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyoEZdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_A2xw0JdKEeSUisRPbTY3hA" name="Interface_Stereotype2" memberEnd="_A2xw0ZdKEeSUisRPbTY3hA _A2yX4JdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyoEpdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyoE5dKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_A2xw0ZdKEeSUisRPbTY3hA" name="extension_Stereotype2" type="_yDlCQJdJEeSUisRPbTY3hA" aggregation="composite" association="_A2xw0JdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyoFJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyoFZdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_BAKWUJdKEeSUisRPbTY3hA" name="Package_Stereotype1" memberEnd="_BAKWUZdKEeSUisRPbTY3hA _BAKWUpdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyoFpdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyoF5dKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_BAKWUZdKEeSUisRPbTY3hA" name="extension_Stereotype1" type="_x-fG4JdJEeSUisRPbTY3hA" aggregation="composite" association="_BAKWUJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_BVyoGJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_BVyoGZdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_vlvt4ZdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_vlwU8JdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/dsmlvalidation#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://DSMLValidation_PROFILES/PapyrusValidationRuleDSML.uml#__sUW0OhNEeCjcc2EgK3Uwg"/>
+ </profileApplication>
+</uml:Profile>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/org.eclipse.papyrus.interoperability.rsa.tests.launch b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/org.eclipse.papyrus.interoperability.rsa.tests.launch
new file mode 100644
index 0000000..a799e8e
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/org.eclipse.papyrus.interoperability.rsa.tests.launch
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<launchConfiguration type="org.eclipse.pde.ui.JunitLaunchConfig">
+<booleanAttribute key="append.args" value="true"/>
+<booleanAttribute key="askclear" value="false"/>
+<booleanAttribute key="automaticAdd" value="true"/>
+<booleanAttribute key="automaticValidate" value="false"/>
+<stringAttribute key="bootstrap" value=""/>
+<stringAttribute key="checked" value="[NONE]"/>
+<booleanAttribute key="clearConfig" value="true"/>
+<booleanAttribute key="clearws" value="true"/>
+<booleanAttribute key="clearwslog" value="false"/>
+<stringAttribute key="configLocation" value="${workspace_loc}/.metadata/.plugins/org.eclipse.pde.core/pde-junit"/>
+<booleanAttribute key="default" value="true"/>
+<booleanAttribute key="includeOptional" value="true"/>
+<stringAttribute key="location" value="${workspace_loc}/../junit-interoperability-workspace"/>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_PATHS">
+<listEntry value="/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/AllTests.java"/>
+</listAttribute>
+<listAttribute key="org.eclipse.debug.core.MAPPED_RESOURCE_TYPES">
+<listEntry value="1"/>
+</listAttribute>
+<stringAttribute key="org.eclipse.jdt.junit.CONTAINER" value=""/>
+<booleanAttribute key="org.eclipse.jdt.junit.KEEPRUNNING_ATTR" value="false"/>
+<stringAttribute key="org.eclipse.jdt.junit.TESTNAME" value=""/>
+<stringAttribute key="org.eclipse.jdt.junit.TEST_KIND" value="org.eclipse.jdt.junit.loader.junit4"/>
+<booleanAttribute key="org.eclipse.jdt.launching.ATTR_USE_START_ON_FIRST_THREAD" value="true"/>
+<stringAttribute key="org.eclipse.jdt.launching.JRE_CONTAINER" value="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+<stringAttribute key="org.eclipse.jdt.launching.MAIN_TYPE" value="org.eclipse.papyrus.interoperability.rsa.tests.AllTests"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="-os ${target.os} -ws ${target.ws} -arch ${target.arch} -nl ${target.nl} -consoleLog"/>
+<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="org.eclipse.papyrus.interoperability.rsa.tests"/>
+<stringAttribute key="org.eclipse.jdt.launching.SOURCE_PATH_PROVIDER" value="org.eclipse.pde.ui.workbenchClasspathProvider"/>
+<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-Dosgi.requiredJavaVersion=1.5 -Xms512m -Xmx1024m -XX:PermSize=256M -XX:MaxPermSize=512M"/>
+<stringAttribute key="pde.version" value="3.3"/>
+<stringAttribute key="product" value="org.eclipse.platform.ide"/>
+<booleanAttribute key="run_in_ui_thread" value="true"/>
+<booleanAttribute key="show_selected_only" value="false"/>
+<booleanAttribute key="tracing" value="false"/>
+<booleanAttribute key="useCustomFeatures" value="false"/>
+<booleanAttribute key="useDefaultConfig" value="true"/>
+<booleanAttribute key="useDefaultConfigArea" value="false"/>
+<booleanAttribute key="useProduct" value="true"/>
+</launchConfiguration>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/plugin.xml b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/plugin.xml
new file mode 100644
index 0000000..e632e6e
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/plugin.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+ <extension
+ point="org.eclipse.papyrus.uml.extensionpoints.UMLProfile">
+ <profile
+ name="Model Import Test Profile"
+ path="platform:/plugin/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileUpdates.profile.uml">
+ </profile>
+ <profile
+ name="Model Import Test Profile - Profile References"
+ path="platform:/plugin/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileReferences.profile.uml">
+ </profile>
+ </extension>
+
+ <extension
+ point="org.eclipse.uml2.uml.dynamic_package">
+
+ <!-- URI Fragment of the UML Profile -->
+ <!-- NSUri of the latest Profile Definition (EPackage) -->
+ <profile
+ location="platform:/plugin/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileUpdates.profile.uml#_vfjmUJdJEeSUisRPbTY3hA"
+ uri="http:///schemas/ProfileUpdates/_Edh1EJdKEeSUisRPbTY3hA/4">
+ </profile>
+ </extension>
+
+ <extension
+ point="org.eclipse.emf.ecore.dynamic_package">
+
+ <!-- URI Fragment of the Profile Definition (EPackage) -->
+ <!-- NSUri of the latest Profile Definition (EPackage) -->
+ <resource
+ location="platform:/plugin/org.eclipse.papyrus.interoperability.rsa.tests/deployedProfile/ProfileUpdates.profile.uml#_Edh1EZdKEeSUisRPbTY3hA"
+ uri="http:///schemas/ProfileUpdates/_Edh1EJdKEeSUisRPbTY3hA/4">
+ </resource>
+ </extension>
+
+ <extension
+ point="org.eclipse.papyrus.interoperability.rsa.extensions">
+ <transformation
+ className="org.eclipse.papyrus.interoperability.rsa.tests.UML25HandlerExtension">
+ </transformation>
+ <transformation
+ className="org.eclipse.papyrus.interoperability.rsa.tests.regression.StereotypeApplicationsTest$MigrationTracker">
+ </transformation>
+ <transformation
+ className="org.eclipse.papyrus.interoperability.rsa.tests.PostProcessor">
+ </transformation>
+ <transformation
+ className="org.eclipse.papyrus.interoperability.rsa.tests.PostProcessor$WithQVTo">
+ </transformation>
+ </extension>
+</plugin>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/pom.xml b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/pom.xml
new file mode 100644
index 0000000..3ff4a08
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/pom.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.tests.plugins</artifactId>
+ <version>1.4.0-SNAPSHOT</version>
+ </parent>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.tests</artifactId>
+ <version>1.4.0-SNAPSHOT</version>
+ <packaging>eclipse-test-plugin</packaging>
+</project>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/ModelTestClass.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/ModelTestClass.emx
new file mode 100644
index 0000000..a3cba50
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/ModelTestClass.emx
@@ -0,0 +1,606 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package 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:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_CpI9orM9EeOedMT5QMT8fQ" name="ModelTestClass">
+ <eAnnotations xmi:id="_CpI9o7M9EeOedMT5QMT8fQ" source="uml2.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_G_f54LM9EeOedMT5QMT8fQ" type="Class" name="ClassDiagramTest">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_JlYXALM9EeOedMT5QMT8fQ" element="_JkyhILM9EeOedMT5QMT8fQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JlYXArM9EeOedMT5QMT8fQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_JlYXA7M9EeOedMT5QMT8fQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_JliIALM9EeOedMT5QMT8fQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_JliIAbM9EeOedMT5QMT8fQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_JliIArM9EeOedMT5QMT8fQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_JliIA7M9EeOedMT5QMT8fQ" type="PackageContents" collapsed="true" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JlYXAbM9EeOedMT5QMT8fQ" x="3095" y="2090" width="9918" height="7641"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_KpEooLM9EeOedMT5QMT8fQ" element="_KoojwLM9EeOedMT5QMT8fQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_KprFkLM9EeOedMT5QMT8fQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_KprFkbM9EeOedMT5QMT8fQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KprFkrM9EeOedMT5QMT8fQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KprFk7M9EeOedMT5QMT8fQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KprFlLM9EeOedMT5QMT8fQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KprFlbM9EeOedMT5QMT8fQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KprFlrM9EeOedMT5QMT8fQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KprFl7M9EeOedMT5QMT8fQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_KprFmLM9EeOedMT5QMT8fQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KpEoobM9EeOedMT5QMT8fQ" x="4259" y="3889" width="3859" height="3331"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_RwU_MLM9EeOedMT5QMT8fQ" element="_RwLOMLM9EeOedMT5QMT8fQ" fontName="Times New Roman" fontHeight="8" transparency="69" gradient="11102764, 16777215, 0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RwU_MrM9EeOedMT5QMT8fQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_RwU_M7M9EeOedMT5QMT8fQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_RwU_NLM9EeOedMT5QMT8fQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_RwU_NbM9EeOedMT5QMT8fQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_RwU_NrM9EeOedMT5QMT8fQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_RwU_N7M9EeOedMT5QMT8fQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_RwU_OLM9EeOedMT5QMT8fQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_RwU_ObM9EeOedMT5QMT8fQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_RwU_OrM9EeOedMT5QMT8fQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RwU_MbM9EeOedMT5QMT8fQ" x="15180" y="5544" height="1926"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_rrrG4LM9EeOedMT5QMT8fQ" element="_rrh88LM9EeOedMT5QMT8fQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_rrrG4rM9EeOedMT5QMT8fQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_rrrG47M9EeOedMT5QMT8fQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_rrrG5LM9EeOedMT5QMT8fQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_rrrG5bM9EeOedMT5QMT8fQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_rrrG5rM9EeOedMT5QMT8fQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_rrrG57M9EeOedMT5QMT8fQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_rrrG6LM9EeOedMT5QMT8fQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_rrrG6bM9EeOedMT5QMT8fQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_rrrG6rM9EeOedMT5QMT8fQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rrrG4bM9EeOedMT5QMT8fQ" x="13596" y="792"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_sgDKIbM9EeOedMT5QMT8fQ" element="_sgDKILM9EeOedMT5QMT8fQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_sgDKI7M9EeOedMT5QMT8fQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_sgDKJLM9EeOedMT5QMT8fQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_sgDKJbM9EeOedMT5QMT8fQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_sgDKJrM9EeOedMT5QMT8fQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_sgDKJ7M9EeOedMT5QMT8fQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_sgDKKLM9EeOedMT5QMT8fQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_sgDKKbM9EeOedMT5QMT8fQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_sgDKKrM9EeOedMT5QMT8fQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_sgDKK7M9EeOedMT5QMT8fQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sgDKIrM9EeOedMT5QMT8fQ" x="17952" y="792"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_TPivMLM9EeOedMT5QMT8fQ" element="_TPGDQLM9EeOedMT5QMT8fQ" source="_KpEooLM9EeOedMT5QMT8fQ" target="_RwU_MLM9EeOedMT5QMT8fQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPivMrM9EeOedMT5QMT8fQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TPivNLM9EeOedMT5QMT8fQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TPivNbM9EeOedMT5QMT8fQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TPivM7M9EeOedMT5QMT8fQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPivNrM9EeOedMT5QMT8fQ" type="ToMultiplicityLabel" element="_TPP0Q7M9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TPivOLM9EeOedMT5QMT8fQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TPivN7M9EeOedMT5QMT8fQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPivObM9EeOedMT5QMT8fQ" type="ToRoleLabel" element="_TPP0Q7M9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TPivO7M9EeOedMT5QMT8fQ" type="ToRole"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TPivOrM9EeOedMT5QMT8fQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPivPLM9EeOedMT5QMT8fQ" type="FromMultiplicityLabel" element="_TPP0QLM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TPivPrM9EeOedMT5QMT8fQ" type="FromMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TPivPbM9EeOedMT5QMT8fQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPivP7M9EeOedMT5QMT8fQ" type="FromRoleLabel" element="_TPP0QLM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TPivQbM9EeOedMT5QMT8fQ" type="FromRole"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TPivQLM9EeOedMT5QMT8fQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPivQrM9EeOedMT5QMT8fQ" type="ToQualifierLabel" element="_TPP0Q7M9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_TPivRLM9EeOedMT5QMT8fQ" type="QualifierCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TPivQ7M9EeOedMT5QMT8fQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPivRbM9EeOedMT5QMT8fQ" type="FromQualifierLabel" element="_TPP0QLM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_TPivR7M9EeOedMT5QMT8fQ" type="QualifierCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TPivRrM9EeOedMT5QMT8fQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPivSLM9EeOedMT5QMT8fQ" type="ToConstraintLabel" element="_TPP0Q7M9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:ListCompartment" xmi:id="_TPsgMLM9EeOedMT5QMT8fQ" type="ToConstraintCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TPivSbM9EeOedMT5QMT8fQ" y="1058"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_TPsgMbM9EeOedMT5QMT8fQ" type="FromConstraintLabel" element="_TPP0QLM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:ListCompartment" xmi:id="_TPsgM7M9EeOedMT5QMT8fQ" type="FromConstraintCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_TPsgMrM9EeOedMT5QMT8fQ" y="1058"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TPivMbM9EeOedMT5QMT8fQ" points="[1890, -237, -8382, -2641]$[5201, -237, -5071, -2641]$[5201, 2174, -5071, -230]$[9295, 2174, -977, -230]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_vmXa0LM9EeOedMT5QMT8fQ" element="_vmNp0LM9EeOedMT5QMT8fQ" source="_rrrG4LM9EeOedMT5QMT8fQ" target="_sgDKIbM9EeOedMT5QMT8fQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa0rM9EeOedMT5QMT8fQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vmXa1LM9EeOedMT5QMT8fQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vmXa1bM9EeOedMT5QMT8fQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vmXa07M9EeOedMT5QMT8fQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa1rM9EeOedMT5QMT8fQ" type="ToMultiplicityLabel" element="_vmNp1LM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vmXa2LM9EeOedMT5QMT8fQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vmXa17M9EeOedMT5QMT8fQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa2bM9EeOedMT5QMT8fQ" type="ToRoleLabel" element="_vmNp1LM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vmXa27M9EeOedMT5QMT8fQ" type="ToRole"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vmXa2rM9EeOedMT5QMT8fQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa3LM9EeOedMT5QMT8fQ" type="FromMultiplicityLabel" element="_vmNp0bM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vmXa3rM9EeOedMT5QMT8fQ" type="FromMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vmXa3bM9EeOedMT5QMT8fQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa37M9EeOedMT5QMT8fQ" type="FromRoleLabel" element="_vmNp0bM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vmXa4bM9EeOedMT5QMT8fQ" type="FromRole"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vmXa4LM9EeOedMT5QMT8fQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa4rM9EeOedMT5QMT8fQ" type="ToQualifierLabel" element="_vmNp1LM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_vmXa5LM9EeOedMT5QMT8fQ" type="QualifierCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vmXa47M9EeOedMT5QMT8fQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa5bM9EeOedMT5QMT8fQ" type="FromQualifierLabel" element="_vmNp0bM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_vmXa57M9EeOedMT5QMT8fQ" type="QualifierCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vmXa5rM9EeOedMT5QMT8fQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa6LM9EeOedMT5QMT8fQ" type="ToConstraintLabel" element="_vmNp1LM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:ListCompartment" xmi:id="_vmXa6rM9EeOedMT5QMT8fQ" type="ToConstraintCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vmXa6bM9EeOedMT5QMT8fQ" y="1058"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_vmXa67M9EeOedMT5QMT8fQ" type="FromConstraintLabel" element="_vmNp0bM9EeOedMT5QMT8fQ">
+ <children xmi:type="notation:ListCompartment" xmi:id="_vmXa7bM9EeOedMT5QMT8fQ" type="FromConstraintCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_vmXa7LM9EeOedMT5QMT8fQ" y="1058"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vmXa0bM9EeOedMT5QMT8fQ" points="[40, 634, -5136, 567]$[40, 1326, -5136, 1259]$[1778, 2252, -3398, 2185]$[2439, 1326, -2737, 1259]$[3762, 2517, -1414, 2450]$[5216, 1326, 40, 1259]$[5216, 768, 40, 701]"/>
+ </edges>
+ </contents>
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_k6tgYLmTEeOxHvnUw-zqDQ" type="Object" name="ObjectDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_m6XD8LmTEeOxHvnUw-zqDQ" element="_m6NS8bmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_m6XD8rmTEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_m6XD87mTEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_m6XD9LmTEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_m6XD9bmTEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_m6XD9rmTEeOxHvnUw-zqDQ" type="Parent"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_m6XD97mTEeOxHvnUw-zqDQ" type="ValueSpecification"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_m6XD-LmTEeOxHvnUw-zqDQ" visible="false" type="TaggedValueSet"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_m6XD-bmTEeOxHvnUw-zqDQ" type="SlotCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_m6XD8bmTEeOxHvnUw-zqDQ" x="3466" y="2592" height="3171"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_n9waobmTEeOxHvnUw-zqDQ" element="_n9waoLmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_n9wao7mTEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_n9wapLmTEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_n9wapbmTEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_n9waprmTEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_n9wap7mTEeOxHvnUw-zqDQ" type="Parent"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_n9waqLmTEeOxHvnUw-zqDQ" type="ValueSpecification"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_n9waqbmTEeOxHvnUw-zqDQ" visible="false" type="TaggedValueSet"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_n9waqrmTEeOxHvnUw-zqDQ" type="SlotCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_n9waormTEeOxHvnUw-zqDQ" x="12938" y="3518"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_uFxhwLmTEeOxHvnUw-zqDQ" element="_uFem0bmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Image">
+ <children xmi:type="notation:DecorationNode" xmi:id="_uFxhwrmTEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_uFxhw7mTEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uFxhxLmTEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uFxhxbmTEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uFxhxrmTEeOxHvnUw-zqDQ" type="ValueSpecification"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uFxhx7mTEeOxHvnUw-zqDQ" visible="false" type="TaggedValueSet"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uFxhyLmTEeOxHvnUw-zqDQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_uFxhybmTEeOxHvnUw-zqDQ" type="InstanceStructureCompartment"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_uF7SwLmTEeOxHvnUw-zqDQ" type="SlotCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_uF7SwbmTEeOxHvnUw-zqDQ" visible="false" type="DeploymentShapeCompartment"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_uF7SwrmTEeOxHvnUw-zqDQ" visible="false" type="DeploymentListCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uFxhwbmTEeOxHvnUw-zqDQ" x="14313" y="7117"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_2bblILmTEeOxHvnUw-zqDQ" element="_2bR0IbmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2bblIrmTEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_2bblI7mTEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2bblJLmTEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2bblJbmTEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2bblJrmTEeOxHvnUw-zqDQ" type="Parent"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2bblJ7mTEeOxHvnUw-zqDQ" type="ValueSpecification"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2bblKLmTEeOxHvnUw-zqDQ" visible="false" type="TaggedValueSet"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_2bblKbmTEeOxHvnUw-zqDQ" type="SlotCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2bblIbmTEeOxHvnUw-zqDQ" x="20399" y="2989"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_qBIAkbmTEeOxHvnUw-zqDQ" element="_qBIAkLmTEeOxHvnUw-zqDQ" source="_n9waobmTEeOxHvnUw-zqDQ" target="_m6XD8LmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qBIAk7mTEeOxHvnUw-zqDQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_qBIAlbmTEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_qBIAlrmTEeOxHvnUw-zqDQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qBIAlLmTEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_qBIAkrmTEeOxHvnUw-zqDQ" points="[-79, -7, 279, 28]$[-279, -26, 79, 9]"/>
+ </edges>
+ </contents>
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_LD2lMLmVEeOxHvnUw-zqDQ" type="Class" name="ClassDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_LZYJQLmVEeOxHvnUw-zqDQ" element="_LZNxMLmVEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_LZYwULmVEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_LZYwUbmVEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_LZYwUrmVEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_LZZXYLmVEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_LZZXYbmVEeOxHvnUw-zqDQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_LZZXYrmVEeOxHvnUw-zqDQ" type="PackageContents" collapsed="true" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LZYJQbmVEeOxHvnUw-zqDQ" x="12170" y="3757"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_N0KwsLmVEeOxHvnUw-zqDQ" element="_N0AYoLmVEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_N0LXwLmVEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_N0LXwbmVEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N0LXwrmVEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N0LXw7mVEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N0LXxLmVEeOxHvnUw-zqDQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_N0L-0LmVEeOxHvnUw-zqDQ" type="PackageContents" collapsed="true" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N0KwsbmVEeOxHvnUw-zqDQ" x="8281" y="8228"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_P1TiALmVEeOxHvnUw-zqDQ" element="_P1OpgLmVEeOxHvnUw-zqDQ" source="_N0KwsLmVEeOxHvnUw-zqDQ" target="_LZYJQLmVEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_P1UJELmVEeOxHvnUw-zqDQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_P1UJErmVEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_P1UJE7mVEeOxHvnUw-zqDQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_P1UJEbmVEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_P1TiAbmVEeOxHvnUw-zqDQ" points="[16, -16, -131, 153]$[152, -141, 5, 28]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <packageImport xmi:id="_CpI9pLM9EeOedMT5QMT8fQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Package" xmi:id="_JkyhILM9EeOedMT5QMT8fQ" name="Package1">
+ <eAnnotations xmi:id="_JlFcELM9EeOedMT5QMT8fQ" source="uml2.diagrams"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_KoojwLM9EeOedMT5QMT8fQ" name="Class1">
+ <ownedAttribute xmi:id="_MGNVALM9EeOedMT5QMT8fQ" name="attribute1" visibility="private"/>
+ <ownedAttribute xmi:id="_MU8UkLM9EeOedMT5QMT8fQ" name="attribute2" visibility="private"/>
+ <ownedAttribute xmi:id="_TPP0QLM9EeOedMT5QMT8fQ" name="class2" visibility="private" type="_RwLOMLM9EeOedMT5QMT8fQ" association="_TPGDQLM9EeOedMT5QMT8fQ">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WILJMLM9EeOedMT5QMT8fQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WILJMbM9EeOedMT5QMT8fQ" value="1"/>
+ </ownedAttribute>
+ <ownedOperation xmi:id="_OfmOQLM9EeOedMT5QMT8fQ" name="Operation1"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_TPGDQLM9EeOedMT5QMT8fQ" name="" memberEnd="_TPP0QLM9EeOedMT5QMT8fQ _TPP0Q7M9EeOedMT5QMT8fQ"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_RwLOMLM9EeOedMT5QMT8fQ" name="Class2">
+ <ownedAttribute xmi:id="_TPP0Q7M9EeOedMT5QMT8fQ" name="class1" visibility="private" type="_KoojwLM9EeOedMT5QMT8fQ" association="_TPGDQLM9EeOedMT5QMT8fQ">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_WIU6MLM9EeOedMT5QMT8fQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WIU6MbM9EeOedMT5QMT8fQ" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_rrh88LM9EeOedMT5QMT8fQ" name="Class1">
+ <ownedAttribute xmi:id="_vmNp0bM9EeOedMT5QMT8fQ" name="class3" visibility="private" type="_sgDKILM9EeOedMT5QMT8fQ" association="_vmNp0LM9EeOedMT5QMT8fQ">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_vmNp07M9EeOedMT5QMT8fQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_vmNp0rM9EeOedMT5QMT8fQ" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_sgDKILM9EeOedMT5QMT8fQ" name="Class3">
+ <ownedAttribute xmi:id="_vmNp1LM9EeOedMT5QMT8fQ" name="class1" visibility="private" type="_rrh88LM9EeOedMT5QMT8fQ" association="_vmNp0LM9EeOedMT5QMT8fQ">
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_vmNp1rM9EeOedMT5QMT8fQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_vmNp1bM9EeOedMT5QMT8fQ" value="1"/>
+ </ownedAttribute>
+ <ownedOperation xmi:id="_taNsULM9EeOedMT5QMT8fQ" name="OperationClass31"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_vmNp0LM9EeOedMT5QMT8fQ" name="" memberEnd="_vmNp0bM9EeOedMT5QMT8fQ _vmNp1LM9EeOedMT5QMT8fQ"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ReW1YLmTEeOxHvnUw-zqDQ" name="Class4">
+ <eAnnotations xmi:id="_Rey6QLmTEeOxHvnUw-zqDQ" source="uml2.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_Rey6QbmTEeOxHvnUw-zqDQ" type="Structure" element="_ReW1YLmTEeOxHvnUw-zqDQ" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_Rey6QrmTEeOxHvnUw-zqDQ" type="StructureDiagramFrame" element="_ReW1YLmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_Rey6Q7mTEeOxHvnUw-zqDQ" type="StructureCompartment">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_V1micrmTEeOxHvnUw-zqDQ" element="_V1micbmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_V1midLmTEeOxHvnUw-zqDQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_V1wTcLmTEeOxHvnUw-zqDQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_V1wTcbmTEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_V1wTcrmTEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_V1wTc7mTEeOxHvnUw-zqDQ" type="PartTextCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_V1wTdLmTEeOxHvnUw-zqDQ" visible="false" type="PartStructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_V1mic7mTEeOxHvnUw-zqDQ" x="2877" y="2692"/>
+ </children>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Rey6RLmTEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_UAhQILmTEeOxHvnUw-zqDQ" element="_UAXfILmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_UAhQIrmTEeOxHvnUw-zqDQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_UAhQI7mTEeOxHvnUw-zqDQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_UAhQJLmTEeOxHvnUw-zqDQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UAhQJrmTEeOxHvnUw-zqDQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UAhQJbmTEeOxHvnUw-zqDQ" y="-133"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UAhQIbmTEeOxHvnUw-zqDQ" x="15611" y="3175"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rey6RbmTEeOxHvnUw-zqDQ" x="793" y="793" height="9498"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_Xeo80LmTEeOxHvnUw-zqDQ" element="_XeWB4LmTEeOxHvnUw-zqDQ" source="_V1micrmTEeOxHvnUw-zqDQ" target="_UAhQILmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Xeo80rmTEeOxHvnUw-zqDQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Xeo81LmTEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Xeo81bmTEeOxHvnUw-zqDQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Xeo807mTEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Xeo81rmTEeOxHvnUw-zqDQ" visible="false" type="ToMultiplicityLabel" element="_XefL0bmTEeOxHvnUw-zqDQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Xeo82LmTEeOxHvnUw-zqDQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Xeo817mTEeOxHvnUw-zqDQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Xeo82bmTEeOxHvnUw-zqDQ" visible="false" type="FromMultiplicityLabel" element="_XefL0LmTEeOxHvnUw-zqDQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Xeo827mTEeOxHvnUw-zqDQ" type="FromMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Xeo82rmTEeOxHvnUw-zqDQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Xeo80bmTEeOxHvnUw-zqDQ" points="[-1781, 543, -10724, 1284]$[-1781, 1376, -10724, 2117]$[8282, 1376, -661, 2117]$[8282, -767, -661, -26]$[8705, -767, -238, -26]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Xe73wLmTEeOxHvnUw-zqDQ" id="(0.920623671155209,0.5211640211640212)"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Port" xmi:id="_UAXfILmTEeOxHvnUw-zqDQ" name="class1" type="_rrh88LM9EeOedMT5QMT8fQ" aggregation="composite"/>
+ <ownedAttribute xmi:id="_V1micbmTEeOxHvnUw-zqDQ" name="component" visibility="private" type="_V1micLmTEeOxHvnUw-zqDQ" aggregation="composite"/>
+ <ownedConnector xmi:id="_XeWB4LmTEeOxHvnUw-zqDQ" name="Connector" kind="delegation">
+ <end xmi:id="_XefL0LmTEeOxHvnUw-zqDQ" role="_V1micbmTEeOxHvnUw-zqDQ"/>
+ <end xmi:id="_XefL0bmTEeOxHvnUw-zqDQ" role="_UAXfILmTEeOxHvnUw-zqDQ"/>
+ </ownedConnector>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Component" xmi:id="_V1micLmTEeOxHvnUw-zqDQ" name="component"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_m6NS8LmTEeOxHvnUw-zqDQ" name="Class5"/>
+ <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_m6NS8bmTEeOxHvnUw-zqDQ" name="Class5Instance" classifier="_m6NS8LmTEeOxHvnUw-zqDQ"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_n9mpoLmTEeOxHvnUw-zqDQ" name="Class6"/>
+ <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_n9waoLmTEeOxHvnUw-zqDQ" name="Class6Instance" classifier="_n9mpoLmTEeOxHvnUw-zqDQ"/>
+ <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_qBIAkLmTEeOxHvnUw-zqDQ" name="InstanceSpecification1"/>
+ <packagedElement xmi:type="uml:Device" xmi:id="_uFem0LmTEeOxHvnUw-zqDQ" name="Device1"/>
+ <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_uFem0bmTEeOxHvnUw-zqDQ" name="Device1Instance" classifier="_uFem0LmTEeOxHvnUw-zqDQ"/>
+ <packagedElement xmi:type="uml:Signal" xmi:id="_2bR0ILmTEeOxHvnUw-zqDQ" name="Signal1"/>
+ <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_2bR0IbmTEeOxHvnUw-zqDQ" name="Signal1Instance" classifier="_2bR0ILmTEeOxHvnUw-zqDQ"/>
+ <packagedElement xmi:type="uml:Activity" xmi:id="_8QtWcLmTEeOxHvnUw-zqDQ" name="Activity1">
+ <eAnnotations xmi:id="_8RARYLmTEeOxHvnUw-zqDQ" source="uml2.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_8RARYbmTEeOxHvnUw-zqDQ" type="Activity" element="_8QtWcLmTEeOxHvnUw-zqDQ" name="ActivityDiagram1" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLFrame" xmi:id="_8RARYrmTEeOxHvnUw-zqDQ" type="Activity Frame" element="_8QtWcLmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" fillColor="16444909" transparency="23" lineColor="13121592" lineWidth="1" showStereotype="Label">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_8RARY7mTEeOxHvnUw-zqDQ" type="ActivityCompartment">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_9LxQgLmTEeOxHvnUw-zqDQ" element="_9LoGkLmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" fillColor="15912618" transparency="0" lineColor="15912618" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9L7BgLmTEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_9L7BgbmTEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_9L7BgrmTEeOxHvnUw-zqDQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9L7BhLmTEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9L7BhbmTEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9L7BhrmTEeOxHvnUw-zqDQ" type="Parent"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9L7Bg7mTEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9LxQgbmTEeOxHvnUw-zqDQ" x="924" y="1794"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_-p8esLmTEeOxHvnUw-zqDQ" element="_-pzUwLmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-p8esrmTEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_-p8es7mTEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-p8etLmTEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-p8etbmTEeOxHvnUw-zqDQ" type="InPartitions"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-p8etrmTEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-p8et7mTEeOxHvnUw-zqDQ" type="Parent"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-p8esbmTEeOxHvnUw-zqDQ" x="5451" y="2013"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_FmfaELmUEeOxHvnUw-zqDQ" element="_FmVpELmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="15912618" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_FmfaErmUEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_FmfaE7mUEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_FmfaFLmUEeOxHvnUw-zqDQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_FmfaFrmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_FmfaF7mUEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_FmfaGLmUEeOxHvnUw-zqDQ" type="Parent"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FmfaFbmUEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FmfaEbmUEeOxHvnUw-zqDQ" x="11616" y="2965"/>
+ </children>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_8RARZLmTEeOxHvnUw-zqDQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8RARZbmTEeOxHvnUw-zqDQ" x="793" y="793"/>
+ </children>
+ <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8RARZrmTEeOxHvnUw-zqDQ" name="support_hide_pins"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_Cd7tsLmUEeOxHvnUw-zqDQ" element="_CdyjwLmUEeOxHvnUw-zqDQ" source="_9LxQgLmTEeOxHvnUw-zqDQ" target="_-p8esLmTEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Cd7tsrmUEeOxHvnUw-zqDQ" type="ActivityEdgeLabelCompartment">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Cd7ttLmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Cd7ttbmUEeOxHvnUw-zqDQ" type="ActivityEdgeLabel"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cd7ts7mUEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Cd7tsbmUEeOxHvnUw-zqDQ" points="[0, 264, -5770, -166]$[0, 2230, -5770, 1800]$[1671, 510, -4099, 80]$[5770, 2230, 0, 1800]$[5770, 905, 0, 475]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_GIG5YLmUEeOxHvnUw-zqDQ" element="_GH9vcLmUEeOxHvnUw-zqDQ" source="_-p8esLmTEeOxHvnUw-zqDQ" target="_FmfaELmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_GIG5YrmUEeOxHvnUw-zqDQ" type="ActivityEdgeLabelCompartment">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_GIG5ZLmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_GIG5ZbmUEeOxHvnUw-zqDQ" type="ActivityEdgeLabel"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GIG5Y7mUEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GIG5YbmUEeOxHvnUw-zqDQ" points="[57, 7, -132, -24]$[194, 19, 5, -12]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <node xmi:type="uml:InitialNode" xmi:id="_9LoGkLmTEeOxHvnUw-zqDQ" outgoing="_CdyjwLmUEeOxHvnUw-zqDQ"/>
+ <node xmi:type="uml:OpaqueAction" xmi:id="_-pzUwLmTEeOxHvnUw-zqDQ" name="OpaqueAction" outgoing="_GH9vcLmUEeOxHvnUw-zqDQ" incoming="_CdyjwLmUEeOxHvnUw-zqDQ"/>
+ <node xmi:type="uml:ActivityFinalNode" xmi:id="_FmVpELmUEeOxHvnUw-zqDQ" incoming="_GH9vcLmUEeOxHvnUw-zqDQ"/>
+ <edge xmi:type="uml:ControlFlow" xmi:id="_CdyjwLmUEeOxHvnUw-zqDQ" source="_9LoGkLmTEeOxHvnUw-zqDQ" target="_-pzUwLmTEeOxHvnUw-zqDQ">
+ <guard xmi:type="uml:OpaqueExpression" xmi:id="_CdyjwbmUEeOxHvnUw-zqDQ">
+ <language></language>
+ <body></body>
+ </guard>
+ <weight xmi:type="uml:LiteralInteger" xmi:id="_CdyjwrmUEeOxHvnUw-zqDQ" value="1"/>
+ </edge>
+ <edge xmi:type="uml:ControlFlow" xmi:id="_GH9vcLmUEeOxHvnUw-zqDQ" source="_-pzUwLmTEeOxHvnUw-zqDQ" target="_FmVpELmUEeOxHvnUw-zqDQ">
+ <guard xmi:type="uml:OpaqueExpression" xmi:id="_GH9vcbmUEeOxHvnUw-zqDQ">
+ <language></language>
+ <body></body>
+ </guard>
+ <weight xmi:type="uml:LiteralInteger" xmi:id="_GH9vcrmUEeOxHvnUw-zqDQ" value="1"/>
+ </edge>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Collaboration" xmi:id="_NQG20LmUEeOxHvnUw-zqDQ" name="Collaboration1">
+ <ownedBehavior xmi:type="uml:Interaction" xmi:id="_NQZxwLmUEeOxHvnUw-zqDQ" name="Interaction1">
+ <eAnnotations xmi:id="_NQsssLmUEeOxHvnUw-zqDQ" source="uml2.diagrams" references="_NQsssbmUEeOxHvnUw-zqDQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_NQsssbmUEeOxHvnUw-zqDQ" type="Sequence" element="_NQZxwLmUEeOxHvnUw-zqDQ" name="SequenceDiagram1" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_NQsssrmUEeOxHvnUw-zqDQ" element="_NQZxwLmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" fillColor="16250871" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_NQsss7mUEeOxHvnUw-zqDQ" type="interaction_compartment">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_QI4awLmUEeOxHvnUw-zqDQ" element="_QIvQ0LmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_QI4awrmUEeOxHvnUw-zqDQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_QI4aw7mUEeOxHvnUw-zqDQ" key="LifelineLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_QI4axLmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_QI4axbmUEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_QI4axrmUEeOxHvnUw-zqDQ" type="Parent"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QI4awbmUEeOxHvnUw-zqDQ" x="3243" y="317" width="1799" height="9525"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_PHt4sLmUEeOxHvnUw-zqDQ" element="_PHa9wLmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_PHt4srmUEeOxHvnUw-zqDQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_PHt4s7mUEeOxHvnUw-zqDQ" key="LifelineLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_PHt4tLmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_PHt4tbmUEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_PHt4trmUEeOxHvnUw-zqDQ" type="Parent"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_PHt4sbmUEeOxHvnUw-zqDQ" x="264"/>
+ </children>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_NQsstLmUEeOxHvnUw-zqDQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_NQsstbmUEeOxHvnUw-zqDQ" x="793" y="793"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_SRKV4LmUEeOxHvnUw-zqDQ" element="_SQkgALmUEeOxHvnUw-zqDQ" source="_PHt4sLmUEeOxHvnUw-zqDQ" target="_QI4awLmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_SRKV4rmUEeOxHvnUw-zqDQ" type="MessageNameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SRKV5LmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SRKV5bmUEeOxHvnUw-zqDQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SRKV47mUEeOxHvnUw-zqDQ" y="-317"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SRKV4bmUEeOxHvnUw-zqDQ" points="[0, 0, -214, 0]$[214, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SRdQ0LmUEeOxHvnUw-zqDQ" id="18:2277"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SRdQ0bmUEeOxHvnUw-zqDQ" id="77:0"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_TxHswLmUEeOxHvnUw-zqDQ" element="_Tw0x0LmUEeOxHvnUw-zqDQ" source="_PHt4sLmUEeOxHvnUw-zqDQ" target="_QI4awLmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TxHswrmUEeOxHvnUw-zqDQ" type="MessageNameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TxHsxLmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TxHsxbmUEeOxHvnUw-zqDQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TxHsw7mUEeOxHvnUw-zqDQ" y="-317"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TxHswbmUEeOxHvnUw-zqDQ" points="[0, 0, -214, 0]$[214, 0, 0, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TxRdwLmUEeOxHvnUw-zqDQ" id="91:1878"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TxRdwbmUEeOxHvnUw-zqDQ" id="153:0"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <ownedConnector xmi:id="_SQkgBrmUEeOxHvnUw-zqDQ">
+ <end xmi:id="_SQkgB7mUEeOxHvnUw-zqDQ" role="_PHkuwLmUEeOxHvnUw-zqDQ"/>
+ <end xmi:id="_SQkgCLmUEeOxHvnUw-zqDQ" role="_QIvQ0bmUEeOxHvnUw-zqDQ"/>
+ </ownedConnector>
+ <lifeline xmi:id="_PHa9wLmUEeOxHvnUw-zqDQ" name="activity" represents="_PHkuwLmUEeOxHvnUw-zqDQ" coveredBy="_SQkgAbmUEeOxHvnUw-zqDQ _Tw0x0bmUEeOxHvnUw-zqDQ _Tw0x1rmUEeOxHvnUw-zqDQ"/>
+ <lifeline xmi:id="_QIvQ0LmUEeOxHvnUw-zqDQ" name="Property" represents="_QIvQ0bmUEeOxHvnUw-zqDQ" coveredBy="_SQkgArmUEeOxHvnUw-zqDQ _SQkgA7mUEeOxHvnUw-zqDQ _SQkgBbmUEeOxHvnUw-zqDQ _Tw0x0rmUEeOxHvnUw-zqDQ _Tw0x07mUEeOxHvnUw-zqDQ _Tw0x1LmUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_SQkgAbmUEeOxHvnUw-zqDQ" covered="_PHa9wLmUEeOxHvnUw-zqDQ" message="_SQkgALmUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_SQkgArmUEeOxHvnUw-zqDQ" covered="_QIvQ0LmUEeOxHvnUw-zqDQ" message="_SQkgALmUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:BehaviorExecutionSpecification" xmi:id="_SQkgA7mUEeOxHvnUw-zqDQ" covered="_QIvQ0LmUEeOxHvnUw-zqDQ" start="_SQkgArmUEeOxHvnUw-zqDQ" finish="_SQkgBbmUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:ExecutionOccurrenceSpecification" xmi:id="_SQkgBbmUEeOxHvnUw-zqDQ" covered="_QIvQ0LmUEeOxHvnUw-zqDQ" event="_SQkgBLmUEeOxHvnUw-zqDQ" execution="_SQkgA7mUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_Tw0x0bmUEeOxHvnUw-zqDQ" covered="_PHa9wLmUEeOxHvnUw-zqDQ" message="_Tw0x0LmUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_Tw0x0rmUEeOxHvnUw-zqDQ" covered="_QIvQ0LmUEeOxHvnUw-zqDQ" message="_Tw0x0LmUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:BehaviorExecutionSpecification" xmi:id="_Tw0x07mUEeOxHvnUw-zqDQ" covered="_QIvQ0LmUEeOxHvnUw-zqDQ" start="_Tw0x0rmUEeOxHvnUw-zqDQ" finish="_Tw0x1LmUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_Tw0x1LmUEeOxHvnUw-zqDQ" covered="_QIvQ0LmUEeOxHvnUw-zqDQ" message="_Tw0x1bmUEeOxHvnUw-zqDQ"/>
+ <fragment xmi:type="uml:MessageOccurrenceSpecification" xmi:id="_Tw0x1rmUEeOxHvnUw-zqDQ" covered="_PHa9wLmUEeOxHvnUw-zqDQ" message="_Tw0x1bmUEeOxHvnUw-zqDQ"/>
+ <message xmi:id="_SQkgALmUEeOxHvnUw-zqDQ" name="\Unspecified\" messageSort="asynchCall" receiveEvent="_SQkgArmUEeOxHvnUw-zqDQ" sendEvent="_SQkgAbmUEeOxHvnUw-zqDQ" connector="_SQkgBrmUEeOxHvnUw-zqDQ"/>
+ <message xmi:id="_Tw0x0LmUEeOxHvnUw-zqDQ" name="\Unspecified\" receiveEvent="_Tw0x0rmUEeOxHvnUw-zqDQ" sendEvent="_Tw0x0bmUEeOxHvnUw-zqDQ" connector="_SQkgBrmUEeOxHvnUw-zqDQ"/>
+ <message xmi:id="_Tw0x1bmUEeOxHvnUw-zqDQ" name="\Unspecified\" messageSort="reply" receiveEvent="_Tw0x1rmUEeOxHvnUw-zqDQ" sendEvent="_Tw0x1LmUEeOxHvnUw-zqDQ" connector="_SQkgBrmUEeOxHvnUw-zqDQ"/>
+ </ownedBehavior>
+ <ownedAttribute xmi:id="_PHkuwLmUEeOxHvnUw-zqDQ" name="activity" type="_OpXv0LmUEeOxHvnUw-zqDQ"/>
+ <ownedAttribute xmi:id="_QIvQ0bmUEeOxHvnUw-zqDQ" name="Property"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_OpXv0LmUEeOxHvnUw-zqDQ" name="activity"/>
+ <packagedElement xmi:type="uml:ExecutionEvent" xmi:id="_SQkgBLmUEeOxHvnUw-zqDQ" name="ExecutionEvent1"/>
+ <packagedElement xmi:type="uml:StateMachine" xmi:id="_WGV3sLmUEeOxHvnUw-zqDQ" name="StateMachine1">
+ <eAnnotations xmi:id="_WG8UoLmUEeOxHvnUw-zqDQ" source="uml2.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_WG8UobmUEeOxHvnUw-zqDQ" type="Statechart" element="_WGV3sLmUEeOxHvnUw-zqDQ" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLFrame" xmi:id="_WG8UormUEeOxHvnUw-zqDQ" type="Statemachine" element="_WGV3sLmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" fillColor="16250871" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label" alignment="Horizontal">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_WG8Uo7mUEeOxHvnUw-zqDQ" type="Region" element="_WGfosLmUEeOxHvnUw-zqDQ">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_YT-z8LmUEeOxHvnUw-zqDQ" element="_YT1C8LmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" fillColor="15912618" transparency="0" lineColor="15912618" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_YT-z8rmUEeOxHvnUw-zqDQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_YT-z9LmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_YT-z9bmUEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_YT-z9rmUEeOxHvnUw-zqDQ" type="Parent"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YT-z87mUEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YT-z8bmUEeOxHvnUw-zqDQ" x="2026" y="1827"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_YtHssLmUEeOxHvnUw-zqDQ" element="_Ys97sLmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="15912618" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_YtHssrmUEeOxHvnUw-zqDQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_YtHstLmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_YtHstbmUEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_YtHstrmUEeOxHvnUw-zqDQ" type="Parent"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YtHss7mUEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YtHssbmUEeOxHvnUw-zqDQ" x="11312" y="1933"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_ZA6LYbmUEeOxHvnUw-zqDQ" element="_ZA6LYLmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZA6LY7mUEeOxHvnUw-zqDQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_ZA6LZLmUEeOxHvnUw-zqDQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ZA6LZbmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ZA6LZrmUEeOxHvnUw-zqDQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ZA6LZ7mUEeOxHvnUw-zqDQ" type="Parent"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_ZA6LaLmUEeOxHvnUw-zqDQ" visible="false" type="Activities"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_ZBDVULmUEeOxHvnUw-zqDQ" visible="false" type="InternalTransitionCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZA6LYrmUEeOxHvnUw-zqDQ" x="5809" y="3335"/>
+ </children>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_WG8UpLmUEeOxHvnUw-zqDQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WG8UpbmUEeOxHvnUw-zqDQ" x="793" y="793"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_ZsMkELmUEeOxHvnUw-zqDQ" element="_Zr5pILmUEeOxHvnUw-zqDQ" source="_YT-z8LmUEeOxHvnUw-zqDQ" target="_ZA6LYbmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ZsMkErmUEeOxHvnUw-zqDQ" type="TransitionLabelCompartment">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ZsMkFLmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ZsMkFbmUEeOxHvnUw-zqDQ" type="TransitionLabel"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_ZsMkFrmUEeOxHvnUw-zqDQ" type="Triggers"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZsMkE7mUEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZsMkEbmUEeOxHvnUw-zqDQ" points="[413, 186, -4349, -1771]$[1587, 714, -3175, -1243]$[2196, 2487, -2566, 530]$[3704, 2175, -1058, 218]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZsWVELmUEeOxHvnUw-zqDQ" id="(0.14933837429111532,0.4007561436672968)"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_dnCB8LmUEeOxHvnUw-zqDQ" element="_dm44ALmUEeOxHvnUw-zqDQ" source="_ZA6LYbmUEeOxHvnUw-zqDQ" target="_YtHssLmUEeOxHvnUw-zqDQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_dnCB8rmUEeOxHvnUw-zqDQ" type="TransitionLabelCompartment">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_dnCB9LmUEeOxHvnUw-zqDQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_dnCB9bmUEeOxHvnUw-zqDQ" type="TransitionLabel"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_dnCB9rmUEeOxHvnUw-zqDQ" type="Triggers"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dnCB87mUEeOxHvnUw-zqDQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dnCB8bmUEeOxHvnUw-zqDQ" points="[40, -15, -141, 50]$[180, -77, -1, -12]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <region xmi:id="_WGfosLmUEeOxHvnUw-zqDQ" name="Region1">
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_YT1C8LmUEeOxHvnUw-zqDQ"/>
+ <subvertex xmi:type="uml:FinalState" xmi:id="_Ys97sLmUEeOxHvnUw-zqDQ"/>
+ <subvertex xmi:type="uml:State" xmi:id="_ZA6LYLmUEeOxHvnUw-zqDQ" name="State1"/>
+ <transition xmi:id="_Zr5pILmUEeOxHvnUw-zqDQ" name="test" source="_YT1C8LmUEeOxHvnUw-zqDQ" target="_ZA6LYLmUEeOxHvnUw-zqDQ">
+ <eAnnotations xmi:id="_Zr5pIbmUEeOxHvnUw-zqDQ" source="uml2.alias">
+ <details xmi:id="_Zr5pIrmUEeOxHvnUw-zqDQ" key="Initial"/>
+ </eAnnotations>
+ </transition>
+ <transition xmi:id="_dm44ALmUEeOxHvnUw-zqDQ" source="_ZA6LYLmUEeOxHvnUw-zqDQ" target="_Ys97sLmUEeOxHvnUw-zqDQ"/>
+ </region>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_LZNxMLmVEeOxHvnUw-zqDQ" name="Package2">
+ <eAnnotations xmi:id="_LZOYQLmVEeOxHvnUw-zqDQ" source="uml2.diagrams" references="_LZOYQbmVEeOxHvnUw-zqDQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_LZOYQbmVEeOxHvnUw-zqDQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_N0AYoLmVEeOxHvnUw-zqDQ" name="Package3" clientDependency="_P1OpgLmVEeOxHvnUw-zqDQ">
+ <eAnnotations xmi:id="_N0A_sLmVEeOxHvnUw-zqDQ" source="uml2.diagrams" references="_N0A_sbmVEeOxHvnUw-zqDQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_N0A_sbmVEeOxHvnUw-zqDQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Dependency" xmi:id="_P1OpgLmVEeOxHvnUw-zqDQ" supplier="_LZNxMLmVEeOxHvnUw-zqDQ" client="_N0AYoLmVEeOxHvnUw-zqDQ"/>
+ </packagedElement>
+ <profileApplication xmi:id="_CpI9pbM9EeOedMT5QMT8fQ">
+ <eAnnotations xmi:id="_CpI9prM9EeOedMT5QMT8fQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_CpI9p7M9EeOedMT5QMT8fQ">
+ <eAnnotations xmi:id="_CpI9qLM9EeOedMT5QMT8fQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_CpI9qbM9EeOedMT5QMT8fQ">
+ <eAnnotations xmi:id="_CpI9qrM9EeOedMT5QMT8fQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/Profile.epx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/Profile.epx
new file mode 100644
index 0000000..12415d9
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/Profile.epx
@@ -0,0 +1,499 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.profile" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<uml:Profile 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:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_S0ev0JpPEeOk3ovACNQDQQ" name="Profile" metamodelReference="_S0jBQZpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_S0og0JpPEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <contents xmi:type="ecore:EPackage" xmi:id="_Q88J8ZpQEeOk3ovACNQDQQ" name="Profile" nsURI="http:///schemas/Profile/_Q88J8JpQEeOk3ovACNQDQQ/3" nsPrefix="Profile">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Q88J8ppQEeOk3ovACNQDQQ" name="Participant">
+ <eAnnotations xmi:id="_Q88J85pQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_2w-zYJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Q88J9JpQEeOk3ovACNQDQQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Q88J9ppQEeOk3ovACNQDQQ" name="Agent" eSuperTypes="_Q88J8ppQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_Q88J95pQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_5dk8gJpPEeOk3ovACNQDQQ"/>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Q88J-ZpQEeOk3ovACNQDQQ" name="Stereotype1">
+ <eAnnotations xmi:id="_Q88J-ppQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_97pqUJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Q88J-5pQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Q88J_ZpQEeOk3ovACNQDQQ" name="Stereotype2">
+ <eAnnotations xmi:id="_Q88J_ppQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_-TEr0JpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Q88J_5pQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_Q88KAZpQEeOk3ovACNQDQQ" name="TESt" 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="_Q88KA5pQEeOk3ovACNQDQQ" name="Stereotype3">
+ <eAnnotations xmi:id="_Q88KBJpQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_-pIbYJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Q88KBZpQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Q88KB5pQEeOk3ovACNQDQQ" name="Stereotype4">
+ <eAnnotations xmi:id="_Q88KCJpQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_D_RZoJpQEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Q88KCZpQEeOk3ovACNQDQQ" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Q88KC5pQEeOk3ovACNQDQQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_P77Y4ZpQEeOk3ovACNQDQQ" name="Profile" nsURI="http:///schemas/Profile/_P77Y4JpQEeOk3ovACNQDQQ/2" nsPrefix="Profile">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_P77Y4ppQEeOk3ovACNQDQQ" name="Participant">
+ <eAnnotations xmi:id="_P77Y45pQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_2w-zYJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_P77Y5JpQEeOk3ovACNQDQQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_P77Y5ppQEeOk3ovACNQDQQ" name="Agent" eSuperTypes="_P77Y4ppQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_P77Y55pQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_5dk8gJpPEeOk3ovACNQDQQ"/>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_P77_8JpQEeOk3ovACNQDQQ" name="Stereotype1">
+ <eAnnotations xmi:id="_P77_8ZpQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_97pqUJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_P77_8ppQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_P77_9JpQEeOk3ovACNQDQQ" name="Stereotype2">
+ <eAnnotations xmi:id="_P77_9ZpQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_-TEr0JpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_P77_9ppQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_P77_-JpQEeOk3ovACNQDQQ" name="TESt" 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="_P77_-ppQEeOk3ovACNQDQQ" name="Stereotype3">
+ <eAnnotations xmi:id="_P77_-5pQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_-pIbYJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_P77__JpQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_P77__ppQEeOk3ovACNQDQQ" name="Stereotype4">
+ <eAnnotations xmi:id="_P77__5pQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_D_RZoJpQEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_P78AAJpQEeOk3ovACNQDQQ" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_P78AAppQEeOk3ovACNQDQQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_FTKDYJpQEeOk3ovACNQDQQ" name="Profile" nsURI="http:///schemas/Profile/_FTI1QJpQEeOk3ovACNQDQQ/1" nsPrefix="Profile">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_FTKDYZpQEeOk3ovACNQDQQ" name="Participant">
+ <eAnnotations xmi:id="_FTKDYppQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_2w-zYJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_FTKDY5pQEeOk3ovACNQDQQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_FTKDZZpQEeOk3ovACNQDQQ" name="Agent" eSuperTypes="_FTKDYZpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTKDZppQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_5dk8gJpPEeOk3ovACNQDQQ"/>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_FTKDaJpQEeOk3ovACNQDQQ" name="Stereotype1">
+ <eAnnotations xmi:id="_FTKDaZpQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_97pqUJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_FTKDappQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_FTKDbJpQEeOk3ovACNQDQQ" name="Stereotype2">
+ <eAnnotations xmi:id="_FTKDbZpQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_-TEr0JpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_FTKDbppQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_FTKDcJpQEeOk3ovACNQDQQ" name="Stereotype3">
+ <eAnnotations xmi:id="_FTKDcZpQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_-pIbYJpPEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_FTKDcppQEeOk3ovACNQDQQ" name="base_Port" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Port"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_FTKDdJpQEeOk3ovACNQDQQ" name="Stereotype4">
+ <eAnnotations xmi:id="_FTKDdZpQEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_D_RZoJpQEeOk3ovACNQDQQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_FTKDdppQEeOk3ovACNQDQQ" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_FTKDeJpQEeOk3ovACNQDQQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_S0og0ZpPEeOk3ovACNQDQQ" name="Profile" nsURI="http:///schemas/Profile/_S0n5wJpPEeOk3ovACNQDQQ/0" nsPrefix="Profile"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_UQpy4JpPEeOk3ovACNQDQQ" source="uml2.profile.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_UQpy4ZpPEeOk3ovACNQDQQ" type="Class" name="ClassDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_jMSrwJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jMTS0JpPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_jMTS0ZpPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jMTS0ppPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jMT54JpPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jMT54ZpPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_jMT54ppPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_jMT545pPEeOk3ovACNQDQQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_jMUg8JpPEeOk3ovACNQDQQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_jMUg8ZpPEeOk3ovACNQDQQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jMSrwZpPEeOk3ovACNQDQQ" x="1188" y="2640"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_kDJbQJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kDKCUJpPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_kDKCUZpPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_kDKCUppPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_kDKpYJpPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_kDKpYZpPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_kDKpYppPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_kDKpY5pPEeOk3ovACNQDQQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_kDLQcJpPEeOk3ovACNQDQQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_kDLQcZpPEeOk3ovACNQDQQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kDJbQZpPEeOk3ovACNQDQQ" x="14138" y="528"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_u4w58JpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_u4xhAJpPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_u4xhAZpPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_u4xhAppPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_u4xhA5pPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_u4yIEJpPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_u4yIEZpPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_u4yIEppPEeOk3ovACNQDQQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_u4yIE5pPEeOk3ovACNQDQQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_u4yvIJpPEeOk3ovACNQDQQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interface"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_u4w58ZpPEeOk3ovACNQDQQ" x="7920" y="1452"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_xMkIkJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xMkvoJpPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_xMkvoZpPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xMkvoppPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xMlWsJpPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xMlWsZpPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_xMlWsppPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_xMlWs5pPEeOk3ovACNQDQQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_xMlWtJpPEeOk3ovACNQDQQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_xMl9wJpPEeOk3ovACNQDQQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xMkIkZpPEeOk3ovACNQDQQ" x="20724" y="3828"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_2xBPoJpPEeOk3ovACNQDQQ" element="_2w-zYJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2xB2sJpPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_2xB2sZpPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xB2sppPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xB2s5pPEeOk3ovACNQDQQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xB2tJpPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xCdwJpPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2xCdwZpPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2xCdwppPEeOk3ovACNQDQQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2xBPoZpPEeOk3ovACNQDQQ" x="2508" y="8844"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_5dsRQJpPEeOk3ovACNQDQQ" element="_5dk8gJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5dsRQppPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_5dsRQ5pPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5ds4UJpPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5ds4UZpPEeOk3ovACNQDQQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5ds4UppPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5ds4U5pPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5dtfYJpPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5dtfYZpPEeOk3ovACNQDQQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5dsRQZpPEeOk3ovACNQDQQ" x="1534" y="12911"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_97sGkJpPEeOk3ovACNQDQQ" element="_97pqUJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_97stoJpPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_97stoZpPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_97stoppPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_97tUsJpPEeOk3ovACNQDQQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_97tUsZpPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_97tUsppPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_97tUs5pPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_97tUtJpPEeOk3ovACNQDQQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_97sGkZpPEeOk3ovACNQDQQ" x="20577" y="10956"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_-THIEJpPEeOk3ovACNQDQQ" element="_-TEr0JpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-THvIJpPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_-THvIZpPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-THvIppPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-TIWMJpPEeOk3ovACNQDQQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-TIWMZpPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-TIWMppPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_-TIWM5pPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_-TIWNJpPEeOk3ovACNQDQQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-THIEZpPEeOk3ovACNQDQQ" x="12936" y="6732" height="2325"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_-pLesJpPEeOk3ovACNQDQQ" element="_-pIbYJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-pLesppPEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_-pLes5pPEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-pMFwJpPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-pMFwZpPEeOk3ovACNQDQQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-pMFwppPEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-pMFw5pPEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_-pMFxJpPEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_-pMs0JpPEeOk3ovACNQDQQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-pLesZpPEeOk3ovACNQDQQ" x="16368" y="11352"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_D_VEAJpQEeOk3ovACNQDQQ" element="_D_RZoJpQEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_D_VrEJpQEeOk3ovACNQDQQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_D_VrEZpQEeOk3ovACNQDQQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_D_VrEppQEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_D_VrE5pQEeOk3ovACNQDQQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_D_WSIJpQEeOk3ovACNQDQQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_D_WSIZpQEeOk3ovACNQDQQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_D_WSIppQEeOk3ovACNQDQQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_D_W5MJpQEeOk3ovACNQDQQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D_VEAZpQEeOk3ovACNQDQQ" x="8678" y="7699"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_7iBggJpPEeOk3ovACNQDQQ" element="_7h49oJpPEeOk3ovACNQDQQ" source="_2xBPoJpPEeOk3ovACNQDQQ" target="_jMSrwJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_7iBggppPEeOk3ovACNQDQQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7iCHkJpPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7iCHkZpPEeOk3ovACNQDQQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7iBgg5pPEeOk3ovACNQDQQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_7iCHkppPEeOk3ovACNQDQQ" type="ToMultiplicityLabel" element="_7h5ksZpPEeOk3ovACNQDQQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7iCHlJpPEeOk3ovACNQDQQ" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_7iCHk5pPEeOk3ovACNQDQQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_7iBggZpPEeOk3ovACNQDQQ" points="[-2, -22, 1, 150]$[-2, -111, 1, 61]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_8PLhcJpPEeOk3ovACNQDQQ" element="_8PIeIJpPEeOk3ovACNQDQQ" source="_5dsRQJpPEeOk3ovACNQDQQ" target="_2xBPoJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8PLhcppPEeOk3ovACNQDQQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_8PMIgJpPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_8PMIgZpPEeOk3ovACNQDQQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8PLhc5pPEeOk3ovACNQDQQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_8PLhcZpPEeOk3ovACNQDQQ" points="[7, -22, -31, 117]$[41, -117, 3, 22]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="__x7PcJpPEeOk3ovACNQDQQ" element="__x1I0JpPEeOk3ovACNQDQQ" source="_-pLesJpPEeOk3ovACNQDQQ" target="_xMkIkJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="__x7PcppPEeOk3ovACNQDQQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="__x7PdJpPEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="__x72gJpPEeOk3ovACNQDQQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__x7Pc5pPEeOk3ovACNQDQQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="__x72gZpPEeOk3ovACNQDQQ" type="ToMultiplicityLabel" element="__x1v4ZpPEeOk3ovACNQDQQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="__x72g5pPEeOk3ovACNQDQQ" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="__x72gppPEeOk3ovACNQDQQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__x7PcZpPEeOk3ovACNQDQQ" points="[24, -22, -163, 136]$[111, -112, -76, 46]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_AUfJ8JpQEeOk3ovACNQDQQ" element="_AUZqYJpQEeOk3ovACNQDQQ" source="_-THIEJpPEeOk3ovACNQDQQ" target="_xMkIkJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_AUfxAJpQEeOk3ovACNQDQQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_AUfxAppQEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_AUfxA5pQEeOk3ovACNQDQQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AUfxAZpQEeOk3ovACNQDQQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_AUgYEJpQEeOk3ovACNQDQQ" type="ToMultiplicityLabel" element="_AUaRcZpQEeOk3ovACNQDQQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_AUgYEppQEeOk3ovACNQDQQ" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AUgYEZpQEeOk3ovACNQDQQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AUfJ8ZpQEeOk3ovACNQDQQ" points="[45, -22, -284, 143]$[245, -119, -84, 46]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_BRrK8JpQEeOk3ovACNQDQQ" element="_BRlrYJpQEeOk3ovACNQDQQ" source="_97sGkJpPEeOk3ovACNQDQQ" target="_xMkIkJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_BRrK8ppQEeOk3ovACNQDQQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_BRrK9JpQEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_BRryAJpQEeOk3ovACNQDQQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BRrK85pQEeOk3ovACNQDQQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BRryAZpQEeOk3ovACNQDQQ" type="ToMultiplicityLabel" element="_BRlrYppQEeOk3ovACNQDQQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_BRryA5pQEeOk3ovACNQDQQ" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BRryAppQEeOk3ovACNQDQQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BRrK8ZpQEeOk3ovACNQDQQ" points="[47, -15, -428, 147]$[485, -116, 10, 46]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_EX2RsJpQEeOk3ovACNQDQQ" element="_EXwLEJpQEeOk3ovACNQDQQ" source="_D_VEAJpQEeOk3ovACNQDQQ" target="_u4w58JpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_EX2RsppQEeOk3ovACNQDQQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EX2RtJpQEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EX24wJpQEeOk3ovACNQDQQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EX2Rs5pQEeOk3ovACNQDQQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_EX24wZpQEeOk3ovACNQDQQ" type="ToMultiplicityLabel" element="_EXwyIZpQEeOk3ovACNQDQQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EX24w5pQEeOk3ovACNQDQQ" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_EX24wppQEeOk3ovACNQDQQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_EX2RsZpQEeOk3ovACNQDQQ" points="[-6, -22, -9, 175]$[-6, -160, -9, 37]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_E3cXwJpQEeOk3ovACNQDQQ" element="_E3WRIJpQEeOk3ovACNQDQQ" source="_D_VEAJpQEeOk3ovACNQDQQ" target="_kDJbQJpPEeOk3ovACNQDQQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_E3c-0JpQEeOk3ovACNQDQQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_E3c-0ppQEeOk3ovACNQDQQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_E3c-05pQEeOk3ovACNQDQQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E3c-0ZpQEeOk3ovACNQDQQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_E3dl4JpQEeOk3ovACNQDQQ" type="ToMultiplicityLabel" element="_E3W4MZpQEeOk3ovACNQDQQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_E3dl4ppQEeOk3ovACNQDQQ" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_E3dl4ZpQEeOk3ovACNQDQQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_E3cXwZpQEeOk3ovACNQDQQ" points="[25, -22, -200, 183]$[169, -144, -56, 61]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <packageImport xmi:id="_S0jBQJpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTKqcJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTKqcZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packageImport xmi:id="_S0jBQZpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTKqcppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTKqc5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_2w-zYJpPEeOk3ovACNQDQQ" name="Participant">
+ <eAnnotations xmi:id="_FTKqdJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTKqdZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_7h5ksZpPEeOk3ovACNQDQQ" name="base_Class" association="_7h49oJpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTLRgJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRgZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_5dk8gJpPEeOk3ovACNQDQQ" name="Agent">
+ <eAnnotations xmi:id="_FTLRgppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRg5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <generalization xmi:id="_8PIeIJpPEeOk3ovACNQDQQ" general="_2w-zYJpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTLRhJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRhZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </generalization>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_7h49oJpPEeOk3ovACNQDQQ" name="Class_Participant" memberEnd="_7h5ksJpPEeOk3ovACNQDQQ _7h5ksZpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTLRhppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRh5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_7h5ksJpPEeOk3ovACNQDQQ" name="extension_Participant" type="_2w-zYJpPEeOk3ovACNQDQQ" aggregation="composite" association="_7h49oJpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTLRiJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRiZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_97pqUJpPEeOk3ovACNQDQQ" name="Stereotype1">
+ <eAnnotations xmi:id="_FTLRippQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRi5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_BRlrYppQEeOk3ovACNQDQQ" name="base_Port" association="_BRlrYJpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTLRjJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRjZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_-TEr0JpPEeOk3ovACNQDQQ" name="Stereotype2">
+ <eAnnotations xmi:id="_FTLRjppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRj5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_AUaRcZpQEeOk3ovACNQDQQ" name="base_Port" association="_AUZqYJpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTLRkJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTLRkZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_ISrvkJpQEeOk3ovACNQDQQ" name="TESt" visibility="public">
+ <eAnnotations xmi:id="_P78nAJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_P78nAZpQEeOk3ovACNQDQQ" key="addedInVersion" value="2"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_-pIbYJpPEeOk3ovACNQDQQ" name="Stereotype3">
+ <eAnnotations xmi:id="_FTL4kJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4kZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="__x1v4ZpPEeOk3ovACNQDQQ" name="base_Port" association="__x1I0JpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTL4kppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4k5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Port"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="__x1I0JpPEeOk3ovACNQDQQ" name="Port_Stereotype3" memberEnd="__x1v4JpPEeOk3ovACNQDQQ __x1v4ZpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTL4lJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4lZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="__x1v4JpPEeOk3ovACNQDQQ" name="extension_Stereotype3" type="_-pIbYJpPEeOk3ovACNQDQQ" aggregation="composite" association="__x1I0JpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTL4lppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4l5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_AUZqYJpQEeOk3ovACNQDQQ" name="Port_Stereotype2" memberEnd="_AUaRcJpQEeOk3ovACNQDQQ _AUaRcZpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTL4mJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4mZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_AUaRcJpQEeOk3ovACNQDQQ" name="extension_Stereotype2" type="_-TEr0JpPEeOk3ovACNQDQQ" aggregation="composite" association="_AUZqYJpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTL4mppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4m5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_BRlrYJpQEeOk3ovACNQDQQ" name="Port_Stereotype1" memberEnd="_BRlrYZpQEeOk3ovACNQDQQ _BRlrYppQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTL4nJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4nZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_BRlrYZpQEeOk3ovACNQDQQ" name="extension_Stereotype1" type="_97pqUJpPEeOk3ovACNQDQQ" aggregation="composite" association="_BRlrYJpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTL4nppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4n5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_D_RZoJpQEeOk3ovACNQDQQ" name="Stereotype4">
+ <eAnnotations xmi:id="_FTL4oJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTL4oZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_EXwyIZpQEeOk3ovACNQDQQ" name="base_Interface" association="_EXwLEJpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTMfoJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTMfoZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interface"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_E3W4MZpQEeOk3ovACNQDQQ" name="base_Class" association="_E3WRIJpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTMfoppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTMfo5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_EXwLEJpQEeOk3ovACNQDQQ" name="Interface_Stereotype4" memberEnd="_EXwyIJpQEeOk3ovACNQDQQ _EXwyIZpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTMfpJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTMfpZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_EXwyIJpQEeOk3ovACNQDQQ" name="extension_Stereotype4" type="_D_RZoJpQEeOk3ovACNQDQQ" aggregation="composite" association="_EXwLEJpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTMfpppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTMfp5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_E3WRIJpQEeOk3ovACNQDQQ" name="Class_Stereotype4" memberEnd="_E3W4MJpQEeOk3ovACNQDQQ _E3W4MZpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTMfqJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTMfqZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_E3W4MJpQEeOk3ovACNQDQQ" name="extension_Stereotype4" type="_D_RZoJpQEeOk3ovACNQDQQ" aggregation="composite" association="_E3WRIJpQEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_FTMfqppQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTMfq5pQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <profileApplication xmi:id="_S0joUJpPEeOk3ovACNQDQQ">
+ <eAnnotations xmi:id="_S0joUZpPEeOk3ovACNQDQQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/ProfileBase.epx#_IfFYQMmBEdqBcN1R6EvWUw?ProfileBase/ProfileBase?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_FTMfrJpQEeOk3ovACNQDQQ" source="uml2.extensions">
+ <details xmi:id="_FTMfrZpQEeOk3ovACNQDQQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/ProfileBase.epx#_bFUAMdWLEdiy4IqP8whjFA?ProfileBase?"/>
+ </profileApplication>
+</uml:Profile>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/Blank Package.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/Blank Package.emx
new file mode 100644
index 0000000..bb8c514
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/Blank Package.emx
@@ -0,0 +1,262 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Model 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:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_FSLhgr3CEeSCx5YnPkDiBQ" name="Blank Package">
+ <eAnnotations xmi:id="_i2ZNAb3CEeSCx5YnPkDiBQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Class" href="ModelFragment_1.efx#_IfDF0L3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefMixed?"/>
+ <references xmi:type="uml:Class" href="ModelFragment_2.efx#_IZPYwL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefMultiple?"/>
+ <references xmi:type="uml:Class" href="ModelFragment_3.efx#_IVFRgL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefOne?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_FSLhg73CEeSCx5YnPkDiBQ" source="uml2.diagrams" references="_FSLhhL3CEeSCx5YnPkDiBQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_FSLhhL3CEeSCx5YnPkDiBQ" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_F5KosL3CEeSCx5YnPkDiBQ" element="_F5A3sL3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_F5Kosr3CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_F5Kos73CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_F5KotL3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_F5Kotb3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_F5Kotr3CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_F5Kot73CEeSCx5YnPkDiBQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_IVObcL3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IVObcr3CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_IVObc73CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IVObdL3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IVObdb3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IVObdr3CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IVObd73CEeSCx5YnPkDiBQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IVObeL3CEeSCx5YnPkDiBQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IVObeb3CEeSCx5YnPkDiBQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_IVOber3CEeSCx5YnPkDiBQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_3.efx#_IVFRgL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefOne?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IVObcb3CEeSCx5YnPkDiBQ" x="345" y="479"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_IZZJwL3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IZZJwr3CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_IZZJw73CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IZZJxL3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IZZJxb3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IZZJxr3CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IZZJx73CEeSCx5YnPkDiBQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IZZJyL3CEeSCx5YnPkDiBQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IZZJyb3CEeSCx5YnPkDiBQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_IZZJyr3CEeSCx5YnPkDiBQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_2.efx#_IZPYwL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefMultiple?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IZZJwb3CEeSCx5YnPkDiBQ" x="3335" y="426"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_IfDF0b3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_IfDF073CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_IfDF1L3CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IfDF1b3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IfDF1r3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IfDF173CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IfDF2L3CEeSCx5YnPkDiBQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IfDF2b3CEeSCx5YnPkDiBQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_IfDF2r3CEeSCx5YnPkDiBQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_IfDF273CEeSCx5YnPkDiBQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_1.efx#_IfDF0L3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefMixed?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IfDF0r3CEeSCx5YnPkDiBQ" x="6645" y="446"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_F5Kosb3CEeSCx5YnPkDiBQ" x="4206" y="1561" width="11562" height="4868"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_Gx19IL3CEeSCx5YnPkDiBQ" element="_GxjCML3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Gx19Ir3CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_Gx19I73CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Gx19JL3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Gx19Jb3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Gx19Jr3CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_Gx19J73CEeSCx5YnPkDiBQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_KbRh8L3CEeSCx5YnPkDiBQ" element="_KbIYAL3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_KbRh8r3CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_KbRh873CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KbRh9L3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KbRh9b3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KbRh9r3CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KbRh973CEeSCx5YnPkDiBQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KbRh-L3CEeSCx5YnPkDiBQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KbRh-b3CEeSCx5YnPkDiBQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_KbRh-r3CEeSCx5YnPkDiBQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KbRh8b3CEeSCx5YnPkDiBQ" x="81" y="585"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_KfvLMb3CEeSCx5YnPkDiBQ" element="_KfvLML3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_KfvLM73CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_KfvLNL3CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KfvLNb3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KfvLNr3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KfvLN73CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KfvLOL3CEeSCx5YnPkDiBQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KfvLOb3CEeSCx5YnPkDiBQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KfvLOr3CEeSCx5YnPkDiBQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_KfvLO73CEeSCx5YnPkDiBQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KfvLMr3CEeSCx5YnPkDiBQ" x="2938" y="347"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_KlGMUL3CEeSCx5YnPkDiBQ" element="_Kk8bUL3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_KlGMUr3CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_KlGMU73CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KlGMVL3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KlGMVb3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_KlGMVr3CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KlGMV73CEeSCx5YnPkDiBQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KlGMWL3CEeSCx5YnPkDiBQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_KlGMWb3CEeSCx5YnPkDiBQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_KlGMWr3CEeSCx5YnPkDiBQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KlGMUb3CEeSCx5YnPkDiBQ" x="5531" y="373"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_Ktuj4b3CEeSCx5YnPkDiBQ" element="_Ktuj4L3CEeSCx5YnPkDiBQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Ktuj473CEeSCx5YnPkDiBQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_Ktuj5L3CEeSCx5YnPkDiBQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Ktuj5b3CEeSCx5YnPkDiBQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Ktuj5r3CEeSCx5YnPkDiBQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Ktuj573CEeSCx5YnPkDiBQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_Ktuj6L3CEeSCx5YnPkDiBQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_Ktuj6b3CEeSCx5YnPkDiBQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_Ktuj6r3CEeSCx5YnPkDiBQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_Ktuj673CEeSCx5YnPkDiBQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ktuj4r3CEeSCx5YnPkDiBQ" x="5531" y="1776"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gx19Ib3CEeSCx5YnPkDiBQ" x="4224" y="6732" width="11561" height="5370"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_FSLhhb3CEeSCx5YnPkDiBQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_FSLhhr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_FSLhh73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_FSLhiL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_FSLhib3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_FSLhir3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_FSLhi73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_FSLhjL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_FSLhjb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_FSLhjr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_FSLhj73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_FSLhkL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_FSLhkb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_FSLhkr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_FSLhk73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_FSLhlL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_FSLhlb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_FSLhlr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_FSLhl73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_FSLhmL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_FSLhmb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_FSLhmr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_FSLhm73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_FSLhnL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_FSLhnb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_FSLhnr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_FSLhn73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_FSLhoL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_FSLhob3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_FSLhor3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_FSLho73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_FSLhpL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_FSLhpb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_FSLhpr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_FSLhp73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_FSLhqL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_FSLhqb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_FSLhqr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_FSLhq73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_FSLhrL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_FSLhrb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_FSLhrr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_FSLhr73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_FSLhsL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_FSLhsb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_FSLhsr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_FSLhs73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_FSLhtL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_FSLhtb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_FSLhtr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_FSLht73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_FSLhuL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_FSLhub3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_FSLhur3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_FSLhu73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_FSLhvL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_FSLhvb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_FSLhvr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_FSLhv73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_FSLhwL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_FSLhwb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_FSLhwr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_FSLhw73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_FSLhxL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_FSLhxb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_FSLhxr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_FSLhx73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_FSLhyL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_FSLhyb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_FSLhyr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_FSLhy73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_FSLhzL3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_FSLhzb3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_FSLhzr3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_FSLhz73CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_FSLh0L3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_FSLh0b3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_FSLh0r3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_FSLh073CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_FSLh1L3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_FSLh1b3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_FSLh1r3CEeSCx5YnPkDiBQ" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_FSLh173CEeSCx5YnPkDiBQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Package" xmi:id="_F5A3sL3CEeSCx5YnPkDiBQ" name="Fragments">
+ <eAnnotations xmi:id="_F5A3sb3CEeSCx5YnPkDiBQ" source="uml2.diagrams" references="_F5A3sr3CEeSCx5YnPkDiBQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_F5A3sr3CEeSCx5YnPkDiBQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" href="ModelFragment_3.efx#_IVFRgL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefOne?"/>
+ <packagedElement xmi:type="uml:Class" href="ModelFragment_2.efx#_IZPYwL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefMultiple?"/>
+ <packagedElement xmi:type="uml:Class" href="ModelFragment_1.efx#_IfDF0L3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefMixed?"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_GxjCML3CEeSCx5YnPkDiBQ" name="ReferencedElements">
+ <eAnnotations xmi:id="_GxszML3CEeSCx5YnPkDiBQ" source="uml2.diagrams" references="_GxszMb3CEeSCx5YnPkDiBQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_GxszMb3CEeSCx5YnPkDiBQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_KbIYAL3CEeSCx5YnPkDiBQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_KfvLML3CEeSCx5YnPkDiBQ" name="Class2"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Kk8bUL3CEeSCx5YnPkDiBQ" name="Class3"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Ktuj4L3CEeSCx5YnPkDiBQ" name="Class4"/>
+ </packagedElement>
+ <profileApplication xmi:id="_FSLh2L3CEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:id="_FSLh2b3CEeSCx5YnPkDiBQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_FSLh2r3CEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:id="_FSLh273CEeSCx5YnPkDiBQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_FSLh3L3CEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:id="_FSLh3b3CEeSCx5YnPkDiBQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_QjJfIL3CEeSCx5YnPkDiBQ">
+ <eAnnotations xmi:id="_QjJfIb3CEeSCx5YnPkDiBQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="Profile.epx#_-Lqxgb3BEeSCx5YnPkDiBQ?Profile/Profile?"/>
+ </eAnnotations>
+ <appliedProfile href="Profile.epx#_M1c60L3BEeSCx5YnPkDiBQ?Profile?"/>
+ </profileApplication>
+</uml:Model>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_1.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_1.efx
new file mode 100644
index 0000000..d0c4d4d
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_1.efx
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Profile="http:///schemas/Profile/_-LqxgL3BEeSCx5YnPkDiBQ/1" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xsi:schemaLocation="http:///schemas/Profile/_-LqxgL3BEeSCx5YnPkDiBQ/1 Profile.epx#_-Lqxgb3BEeSCx5YnPkDiBQ?Profile/Profile?">
+ <uml:Class xmi:id="_IfDF0L3CEeSCx5YnPkDiBQ" name="RefMixed">
+ <eAnnotations xmi:id="_i2ZNAL3CEeSCx5YnPkDiBQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Blank%20Package.emx#_F5A3sL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments?"/>
+ </eAnnotations>
+ </uml:Class>
+ <Profile:Stereotype2 xmi:id="_SeyFYb3CEeSCx5YnPkDiBQ" base_Class="_IfDF0L3CEeSCx5YnPkDiBQ">
+ <class href="Blank%20Package.emx#_KbIYAL3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class1?"/>
+ <class href="Blank%20Package.emx#_KfvLML3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class2?"/>
+ <class href="Blank%20Package.emx#_Kk8bUL3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class3?"/>
+ <class href="Blank%20Package.emx#_Ktuj4L3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class4?"/>
+ <class href="ModelFragment_3.efx#_IVFRgL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefOne?"/>
+ <class href="ModelFragment_2.efx#_IZPYwL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefMultiple?"/>
+ <class href="#_IfDF0L3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments/RefMixed?"/>
+ </Profile:Stereotype2>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_2.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_2.efx
new file mode 100644
index 0000000..50c220e
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_2.efx
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Profile="http:///schemas/Profile/_-LqxgL3BEeSCx5YnPkDiBQ/1" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xsi:schemaLocation="http:///schemas/Profile/_-LqxgL3BEeSCx5YnPkDiBQ/1 Profile.epx#_-Lqxgb3BEeSCx5YnPkDiBQ?Profile/Profile?">
+ <uml:Class xmi:id="_IZPYwL3CEeSCx5YnPkDiBQ" name="RefMultiple">
+ <eAnnotations xmi:id="_kGI9ob3CEeSCx5YnPkDiBQ" source="com.ibm.xtools.uml.msl.fragments"/>
+ <eAnnotations xmi:id="_kGI9oL3CEeSCx5YnPkDiBQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Blank%20Package.emx#_F5A3sL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments?"/>
+ </eAnnotations>
+ </uml:Class>
+ <Profile:Stereotype2 xmi:id="_SeyFYL3CEeSCx5YnPkDiBQ" base_Class="_IZPYwL3CEeSCx5YnPkDiBQ">
+ <class href="Blank%20Package.emx#_KbIYAL3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class1?"/>
+ <class href="Blank%20Package.emx#_KfvLML3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class2?"/>
+ <class href="Blank%20Package.emx#_Kk8bUL3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class3?"/>
+ <class href="Blank%20Package.emx#_Ktuj4L3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class4?"/>
+ </Profile:Stereotype2>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_3.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_3.efx
new file mode 100644
index 0000000..1380d45
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/anytypeReferences/ModelFragment_3.efx
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Profile="http:///schemas/Profile/_-LqxgL3BEeSCx5YnPkDiBQ/1" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xsi:schemaLocation="http:///schemas/Profile/_-LqxgL3BEeSCx5YnPkDiBQ/1 Profile.epx#_-Lqxgb3BEeSCx5YnPkDiBQ?Profile/Profile?">
+ <uml:Class xmi:id="_IVFRgL3CEeSCx5YnPkDiBQ" name="RefOne">
+ <eAnnotations xmi:id="_lEeOIb3CEeSCx5YnPkDiBQ" source="com.ibm.xtools.uml.msl.fragments"/>
+ <eAnnotations xmi:id="_lEeOIL3CEeSCx5YnPkDiBQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Blank%20Package.emx#_F5A3sL3CEeSCx5YnPkDiBQ?Blank%20Package/Fragments?"/>
+ </eAnnotations>
+ </uml:Class>
+ <Profile:Stereotype1 xmi:id="_RlNZEL3CEeSCx5YnPkDiBQ" base_Class="_IVFRgL3CEeSCx5YnPkDiBQ" attribute1="aze" attribute3="12">
+ <class href="Blank%20Package.emx#_KbIYAL3CEeSCx5YnPkDiBQ?Blank%20Package/ReferencedElements/Class1?"/>
+ </Profile:Stereotype1>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug461980/CompositeStructureDiagram.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug461980/CompositeStructureDiagram.emx
new file mode 100644
index 0000000..a3419ed
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug461980/CompositeStructureDiagram.emx
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<!--Rational Software Architect RealTime Edition 9.1.2-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<uml:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_ih-8ckm2EeaTgb5ZZIM8Jg" name="CompositeStructureDiagram">
+ <eAnnotations xmi:id="_ih-8c0m2EeaTgb5ZZIM8Jg" source="uml2.diagrams"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_leeiwEm2EeaTgb5ZZIM8Jg" name="Class1">
+ <eAnnotations xmi:id="_lfOwsEm2EeaTgb5ZZIM8Jg" source="uml2.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_lfOwsUm2EeaTgb5ZZIM8Jg" type="Structure" element="_leeiwEm2EeaTgb5ZZIM8Jg" name="StructureDiagram1" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_lfOwskm2EeaTgb5ZZIM8Jg" type="StructureDiagramFrame" element="_leeiwEm2EeaTgb5ZZIM8Jg" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_lfOws0m2EeaTgb5ZZIM8Jg" type="StructureCompartment"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_lfOwtEm2EeaTgb5ZZIM8Jg" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lfOwtUm2EeaTgb5ZZIM8Jg" x="793" y="793"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <profileApplication xmi:id="_ih-8dkm2EeaTgb5ZZIM8Jg">
+ <eAnnotations xmi:id="_ih-8d0m2EeaTgb5ZZIM8Jg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_ih-8eEm2EeaTgb5ZZIM8Jg">
+ <eAnnotations xmi:id="_ih-8eUm2EeaTgb5ZZIM8Jg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_ih-8ekm2EeaTgb5ZZIM8Jg">
+ <eAnnotations xmi:id="_ih-8e0m2EeaTgb5ZZIM8Jg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_4OVBUD0TEeKt-L0gyEptgQ?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug498282/ConjugationExample.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug498282/ConjugationExample.emx
new file mode 100644
index 0000000..ad8f0df
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug498282/ConjugationExample.emx
@@ -0,0 +1,407 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<!--Rational Software Architect RealTime Edition 9.1.2-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:UMLRealTime="http:///schemas/UMLRealTime/_3TUzoHq6Ed2hSeAAWZznoA/119" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xsi:schemaLocation="http:///schemas/UMLRealTime/_3TUzoHq6Ed2hSeAAWZznoA/119 pathmap://RT_PROPERTIES/UMLRealTime.epx#_3TUzoXq6Ed2hSeAAWZznoA?UMLRealTime/UMLRealTime?">
+ <uml:Package xmi:id="_j316sDkkEeaNu7tKUcqzfQ" name="ConjugationExample">
+ <eAnnotations xmi:id="_j316sTkkEeaNu7tKUcqzfQ" source="uml2.diagrams"/>
+ <eAnnotations xmi:id="_j316szkkEeaNu7tKUcqzfQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_j316tDkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_j316tTkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_j316tjkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_j316tzkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_j316uDkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_j316uTkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_j316ujkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_j316uzkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_j316vDkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_j316vTkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_j316vjkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_j316vzkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_j316wDkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_j316wTkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_j316wjkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_j316wzkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_j316xDkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_j316xTkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_j316xjkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_j316xzkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_j316yDkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_j316yTkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_j316yjkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_j316yzkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_j316zDkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_j316zTkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_j316zjkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_j316zzkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_j3160DkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_j3160TkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_j3160jkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_j3160zkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_j3161DkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_j3161TkkEeaNu7tKUcqzfQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_j3161jkkEeaNu7tKUcqzfQ" key="uml.rt.activity" value="2"/>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_lvfY0DkkEeaNu7tKUcqzfQ" name="Top">
+ <eAnnotations xmi:id="_l3YwkDkkEeaNu7tKUcqzfQ" source="uml2.diagrams" references="_l3YwkTkkEeaNu7tKUcqzfQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_l3YwkTkkEeaNu7tKUcqzfQ" type="Structure" element="_lvfY0DkkEeaNu7tKUcqzfQ" name="MyOwnTopName" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_l3YwkjkkEeaNu7tKUcqzfQ" type="StructureDiagramFrame" element="_lvfY0DkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_l3YwkzkkEeaNu7tKUcqzfQ" type="StructureCompartment">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_oicooDkkEeaNu7tKUcqzfQ" element="_oh_8vTkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_oicoojkkEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_oicoozkkEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_oicopDkkEeaNu7tKUcqzfQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_oicopTkkEeaNu7tKUcqzfQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_oicopjkkEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_oicopzkkEeaNu7tKUcqzfQ" visible="false" type="PartStructureCompartment"/>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_uRbksTkkEeaNu7tKUcqzfQ" element="_uRSawDkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_uRbkszkkEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_uRbktDkkEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_uRbktTkkEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uRbktzkkEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uRbktjkkEeaNu7tKUcqzfQ" x="-197" y="-249"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uRbksjkkEeaNu7tKUcqzfQ" x="-132" y="457"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_emziEjkoEeaNu7tKUcqzfQ" element="_emziEDkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_emziFDkoEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_emziFTkoEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_emziFjkoEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_emziGDkoEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_emziFzkoEeaNu7tKUcqzfQ" x="505" y="-144"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_emziEzkoEeaNu7tKUcqzfQ" x="4101" y="405"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oicooTkkEeaNu7tKUcqzfQ" x="2594" y="3654"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pveccDkkEeaNu7tKUcqzfQ" element="_pvVSjTkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_pveccjkkEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_pvecczkkEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_pvecdDkkEeaNu7tKUcqzfQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pvecdTkkEeaNu7tKUcqzfQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pvecdjkkEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pvecdzkkEeaNu7tKUcqzfQ" visible="false" type="PartStructureCompartment"/>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_frpDMjkoEeaNu7tKUcqzfQ" element="_frpDMDkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_frpDNDkoEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_frpDNTkoEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_fry0MDkoEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_fry0MjkoEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fry0MTkoEeaNu7tKUcqzfQ" x="-404" y="-144"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_frpDMzkoEeaNu7tKUcqzfQ" x="-132" y="352"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_oE9ekjkoEeaNu7tKUcqzfQ" element="_oE9ekDkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_oFHPkDkoEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_oFHPkTkoEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_oFHPkjkoEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_oFHPlDkoEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oFHPkzkoEeaNu7tKUcqzfQ" x="718" y="-189"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oE9ekzkoEeaNu7tKUcqzfQ" x="4101" y="502"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pveccTkkEeaNu7tKUcqzfQ" x="8997" y="3654"/>
+ </children>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_l3YwlDkkEeaNu7tKUcqzfQ" type="Name"/>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_reVK8DkkEeaNu7tKUcqzfQ" element="_rdvVGjkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_ree78DkkEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_ree78TkkEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_ree78jkkEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ree79DkkEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ree78zkkEeaNu7tKUcqzfQ" x="521" y="-249"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_reVK8TkkEeaNu7tKUcqzfQ" x="-198" y="4877"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_rdBmkDkoEeaNu7tKUcqzfQ" element="_rc31kDkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_rdBmkjkoEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_rdBmkzkoEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_rdBmlDkoEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_rdBmljkoEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rdBmlTkoEeaNu7tKUcqzfQ" x="-338" y="-136"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rdBmkTkoEeaNu7tKUcqzfQ" x="15875" y="4974"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l3YwlTkkEeaNu7tKUcqzfQ" x="793" y="793"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_xVX20DkkEeaNu7tKUcqzfQ" element="_xU7K4DkkEeaNu7tKUcqzfQ" source="_reVK8DkkEeaNu7tKUcqzfQ" target="_uRbksTkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xVX20jkkEeaNu7tKUcqzfQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xVX21DkkEeaNu7tKUcqzfQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xVX21TkkEeaNu7tKUcqzfQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xVX20zkkEeaNu7tKUcqzfQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_xVX21jkkEeaNu7tKUcqzfQ" visible="false" type="ToMultiplicityLabel" element="_xVE74TkkEeaNu7tKUcqzfQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xVX22DkkEeaNu7tKUcqzfQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xVX21zkkEeaNu7tKUcqzfQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_xVX22TkkEeaNu7tKUcqzfQ" visible="false" type="FromMultiplicityLabel" element="_xVE74DkkEeaNu7tKUcqzfQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xVX22zkkEeaNu7tKUcqzfQ" type="FromMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_xVX22jkkEeaNu7tKUcqzfQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xVX20TkkEeaNu7tKUcqzfQ" points="[198, 5, -2475, -158]$[2620, 5, -53, -158]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xV9ssDkkEeaNu7tKUcqzfQ" id="(0.20075757575757575,0.9696969696969697)"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_jwQIJDkoEeaNu7tKUcqzfQ" element="_jwQIIDkoEeaNu7tKUcqzfQ" source="_emziEjkoEeaNu7tKUcqzfQ" target="_frpDMjkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jwQIJjkoEeaNu7tKUcqzfQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jwQIKDkoEeaNu7tKUcqzfQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jwQIKTkoEeaNu7tKUcqzfQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jwQIJzkoEeaNu7tKUcqzfQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jwQIKjkoEeaNu7tKUcqzfQ" visible="false" type="ToMultiplicityLabel" element="_jwQIIjkoEeaNu7tKUcqzfQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jwQILDkoEeaNu7tKUcqzfQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jwQIKzkoEeaNu7tKUcqzfQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_jwQILTkoEeaNu7tKUcqzfQ" visible="false" type="FromMultiplicityLabel" element="_jwQIITkoEeaNu7tKUcqzfQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jwQILzkoEeaNu7tKUcqzfQ" type="FromMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_jwQILjkoEeaNu7tKUcqzfQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jwQIJTkoEeaNu7tKUcqzfQ" points="[5, 0, -81, -6]$[87, 8, 1, 2]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jwZ5IDkoEeaNu7tKUcqzfQ" id="(0.9015151515151515,0.803030303030303)"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_tY_kATkoEeaNu7tKUcqzfQ" element="_tYP9IDkoEeaNu7tKUcqzfQ" source="_oE9ekjkoEeaNu7tKUcqzfQ" target="_rdBmkDkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_tY_kAzkoEeaNu7tKUcqzfQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_tY_kBTkoEeaNu7tKUcqzfQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_tY_kBjkoEeaNu7tKUcqzfQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tY_kBDkoEeaNu7tKUcqzfQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_tY_kBzkoEeaNu7tKUcqzfQ" visible="false" type="ToMultiplicityLabel" element="_tYP9IjkoEeaNu7tKUcqzfQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_tY_kCTkoEeaNu7tKUcqzfQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tY_kCDkoEeaNu7tKUcqzfQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_tY_kCjkoEeaNu7tKUcqzfQ" visible="false" type="FromMultiplicityLabel" element="_tYP9ITkoEeaNu7tKUcqzfQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_tY_kDDkoEeaNu7tKUcqzfQ" type="FromMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_tY_kCzkoEeaNu7tKUcqzfQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_tY_kAjkoEeaNu7tKUcqzfQ" points="[5, 0, -93, 1]$[99, -7, 1, -6]"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tZJVADkoEeaNu7tKUcqzfQ" id="(0.7676767676767676,0.4015151515151515)"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_oh_8vTkkEeaNu7tKUcqzfQ" name="client" visibility="protected" type="_oh2LsDkkEeaNu7tKUcqzfQ" aggregation="composite"/>
+ <ownedAttribute xmi:id="_pvVSjTkkEeaNu7tKUcqzfQ" name="server" visibility="protected" type="_pvBwgDkkEeaNu7tKUcqzfQ" aggregation="composite"/>
+ <ownedAttribute xmi:type="uml:Port" xmi:id="_rdvVGjkkEeaNu7tKUcqzfQ" name="p1" type="_rdlkEjkkEeaNu7tKUcqzfQ" aggregation="composite"/>
+ <ownedAttribute xmi:type="uml:Port" xmi:id="_rc31kDkoEeaNu7tKUcqzfQ" name="p2" type="_rdlkEjkkEeaNu7tKUcqzfQ" aggregation="composite"/>
+ <ownedConnector xmi:id="_xU7K4DkkEeaNu7tKUcqzfQ" name="Connector" kind="delegation">
+ <end xmi:id="_xVE74DkkEeaNu7tKUcqzfQ" role="_rdvVGjkkEeaNu7tKUcqzfQ"/>
+ <end xmi:id="_xVE74TkkEeaNu7tKUcqzfQ" role="_uRSawDkkEeaNu7tKUcqzfQ" partWithPort="_oh_8vTkkEeaNu7tKUcqzfQ"/>
+ </ownedConnector>
+ <ownedConnector xmi:id="_jwQIIDkoEeaNu7tKUcqzfQ" name="P, P~" kind="assembly">
+ <end xmi:id="_jwQIITkoEeaNu7tKUcqzfQ" role="_emziEDkoEeaNu7tKUcqzfQ" partWithPort="_oh_8vTkkEeaNu7tKUcqzfQ"/>
+ <end xmi:id="_jwQIIjkoEeaNu7tKUcqzfQ" role="_frpDMDkoEeaNu7tKUcqzfQ" partWithPort="_pvVSjTkkEeaNu7tKUcqzfQ"/>
+ </ownedConnector>
+ <ownedConnector xmi:id="_tYP9IDkoEeaNu7tKUcqzfQ" name="Connector2" kind="delegation">
+ <end xmi:id="_tYP9ITkoEeaNu7tKUcqzfQ" role="_oE9ekDkoEeaNu7tKUcqzfQ" partWithPort="_pvVSjTkkEeaNu7tKUcqzfQ"/>
+ <end xmi:id="_tYP9IjkoEeaNu7tKUcqzfQ" role="_rc31kDkoEeaNu7tKUcqzfQ"/>
+ </ownedConnector>
+ <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_l2DT0DkkEeaNu7tKUcqzfQ" name="State Machine">
+ <eAnnotations xmi:id="_l3PmoDkkEeaNu7tKUcqzfQ" source="uml2.diagrams" references="_l3PmoTkkEeaNu7tKUcqzfQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_l3PmoTkkEeaNu7tKUcqzfQ" type="Statechart" element="_l2DT0DkkEeaNu7tKUcqzfQ" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLFrame" xmi:id="_l3PmojkkEeaNu7tKUcqzfQ" type="Statemachine" element="_l2DT0DkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" fillColor="16250871" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label" alignment="Horizontal">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_l3PmozkkEeaNu7tKUcqzfQ" type="Region" element="_l2DT0TkkEeaNu7tKUcqzfQ" verticalAlignment="false"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_l3PmpDkkEeaNu7tKUcqzfQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_l3PmpTkkEeaNu7tKUcqzfQ" x="793" y="793"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <region xmi:id="_l2DT0TkkEeaNu7tKUcqzfQ" name="Region1">
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_l2MdwDkkEeaNu7tKUcqzfQ"/>
+ <subvertex xmi:type="uml:State" xmi:id="_l2MdwTkkEeaNu7tKUcqzfQ" name="State1"/>
+ <transition xmi:id="_l2MdwjkkEeaNu7tKUcqzfQ" name="Initial" source="_l2MdwDkkEeaNu7tKUcqzfQ" target="_l2MdwTkkEeaNu7tKUcqzfQ">
+ <eAnnotations xmi:id="_l2WOwDkkEeaNu7tKUcqzfQ" source="uml2.alias">
+ <details xmi:id="_l2WOwTkkEeaNu7tKUcqzfQ" key="Initial"/>
+ </eAnnotations>
+ </transition>
+ </region>
+ </ownedBehavior>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_oh2LsDkkEeaNu7tKUcqzfQ" name="Client">
+ <eAnnotations xmi:id="_oh_8tzkkEeaNu7tKUcqzfQ" source="uml2.diagrams" references="_oh_8uDkkEeaNu7tKUcqzfQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_oh_8uDkkEeaNu7tKUcqzfQ" type="Structure" element="_oh2LsDkkEeaNu7tKUcqzfQ" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_oh_8uTkkEeaNu7tKUcqzfQ" type="StructureDiagramFrame" element="_oh2LsDkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_oh_8ujkkEeaNu7tKUcqzfQ" type="StructureCompartment"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_oh_8uzkkEeaNu7tKUcqzfQ" type="Name"/>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_IF9V4TkpEeaNu7tKUcqzfQ" element="_uRSawDkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_IF9V4zkpEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_IF9V5DkpEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_IF9V5TkpEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IF9V5zkpEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IF9V5jkpEeaNu7tKUcqzfQ" y="-133"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IF9V4jkpEeaNu7tKUcqzfQ" x="-198" y="5297"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_IF9V6DkpEeaNu7tKUcqzfQ" element="_emziEDkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_IF9V6jkpEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_IF9V6zkpEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_IF9V7DkpEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_IF9V7jkpEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IF9V7TkpEeaNu7tKUcqzfQ" y="-133"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IF9V6TkpEeaNu7tKUcqzfQ" x="15677" y="5402"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oh_8vDkkEeaNu7tKUcqzfQ" x="793" y="793"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Port" xmi:id="_uRSawDkkEeaNu7tKUcqzfQ" name="p1" type="_rdlkEjkkEeaNu7tKUcqzfQ" aggregation="composite" isBehavior="true"/>
+ <ownedAttribute xmi:type="uml:Port" xmi:id="_emziEDkoEeaNu7tKUcqzfQ" name="p2" type="_rdlkEjkkEeaNu7tKUcqzfQ" aggregation="composite" isBehavior="true"/>
+ <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_oh2LsTkkEeaNu7tKUcqzfQ" name="State Machine">
+ <eAnnotations xmi:id="_oh_8sTkkEeaNu7tKUcqzfQ" source="uml2.diagrams" references="_oh_8sjkkEeaNu7tKUcqzfQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_oh_8sjkkEeaNu7tKUcqzfQ" type="Statechart" element="_oh2LsTkkEeaNu7tKUcqzfQ" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLFrame" xmi:id="_oh_8szkkEeaNu7tKUcqzfQ" type="Statemachine" element="_oh2LsTkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" fillColor="16250871" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label" alignment="Horizontal">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_oh_8tDkkEeaNu7tKUcqzfQ" type="Region" element="_oh2LsjkkEeaNu7tKUcqzfQ" verticalAlignment="false"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_oh_8tTkkEeaNu7tKUcqzfQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oh_8tjkkEeaNu7tKUcqzfQ" x="793" y="793"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <region xmi:id="_oh2LsjkkEeaNu7tKUcqzfQ" name="Region1">
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_oh2LszkkEeaNu7tKUcqzfQ"/>
+ <subvertex xmi:type="uml:State" xmi:id="_oh2LtDkkEeaNu7tKUcqzfQ" name="State1"/>
+ <transition xmi:id="_oh2LtTkkEeaNu7tKUcqzfQ" name="Initial" source="_oh2LszkkEeaNu7tKUcqzfQ" target="_oh2LtDkkEeaNu7tKUcqzfQ">
+ <eAnnotations xmi:id="_oh2LtjkkEeaNu7tKUcqzfQ" source="uml2.alias">
+ <details xmi:id="_oh2LtzkkEeaNu7tKUcqzfQ" key="Initial"/>
+ </eAnnotations>
+ </transition>
+ </region>
+ </ownedBehavior>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_pvBwgDkkEeaNu7tKUcqzfQ" name="Server">
+ <eAnnotations xmi:id="_pvVShzkkEeaNu7tKUcqzfQ" source="uml2.diagrams" references="_pvVSiDkkEeaNu7tKUcqzfQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_pvVSiDkkEeaNu7tKUcqzfQ" type="Structure" element="_pvBwgDkkEeaNu7tKUcqzfQ" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pvVSiTkkEeaNu7tKUcqzfQ" type="StructureDiagramFrame" element="_pvBwgDkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pvVSijkkEeaNu7tKUcqzfQ" type="StructureCompartment"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pvVSizkkEeaNu7tKUcqzfQ" type="Name"/>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_K_7MoDkpEeaNu7tKUcqzfQ" element="_frpDMDkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_K_7MojkpEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_K_7MozkpEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_K_7MpDkpEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_K_7MpjkpEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K_7MpTkpEeaNu7tKUcqzfQ" y="-133"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K_7MoTkpEeaNu7tKUcqzfQ" x="-198" y="4877"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_K_7MpzkpEeaNu7tKUcqzfQ" element="_oE9ekDkoEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_K_7MqTkpEeaNu7tKUcqzfQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_K_7MqjkpEeaNu7tKUcqzfQ" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_K_7MqzkpEeaNu7tKUcqzfQ" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_K_7MrTkpEeaNu7tKUcqzfQ" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K_7MrDkpEeaNu7tKUcqzfQ" y="-133"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K_7MqDkpEeaNu7tKUcqzfQ" x="15677" y="4877"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pvVSjDkkEeaNu7tKUcqzfQ" x="793" y="793"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Port" xmi:id="_frpDMDkoEeaNu7tKUcqzfQ" name="p1" type="_rdlkEjkkEeaNu7tKUcqzfQ" aggregation="composite" isBehavior="true"/>
+ <ownedAttribute xmi:type="uml:Port" xmi:id="_oE9ekDkoEeaNu7tKUcqzfQ" name="p2" type="_rdlkEjkkEeaNu7tKUcqzfQ" aggregation="composite" isBehavior="true"/>
+ <ownedBehavior xmi:type="uml:StateMachine" xmi:id="_pvLhgDkkEeaNu7tKUcqzfQ" name="State Machine">
+ <eAnnotations xmi:id="_pvVSgTkkEeaNu7tKUcqzfQ" source="uml2.diagrams" references="_pvVSgjkkEeaNu7tKUcqzfQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_pvVSgjkkEeaNu7tKUcqzfQ" type="Statechart" element="_pvLhgDkkEeaNu7tKUcqzfQ" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLFrame" xmi:id="_pvVSgzkkEeaNu7tKUcqzfQ" type="Statemachine" element="_pvLhgDkkEeaNu7tKUcqzfQ" fontName="Segoe UI" fontHeight="8" fillColor="16250871" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label" alignment="Horizontal">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pvVShDkkEeaNu7tKUcqzfQ" type="Region" element="_pvLhgTkkEeaNu7tKUcqzfQ" verticalAlignment="false"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pvVShTkkEeaNu7tKUcqzfQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pvVShjkkEeaNu7tKUcqzfQ" x="793" y="793"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <region xmi:id="_pvLhgTkkEeaNu7tKUcqzfQ" name="Region1">
+ <subvertex xmi:type="uml:Pseudostate" xmi:id="_pvLhgjkkEeaNu7tKUcqzfQ"/>
+ <subvertex xmi:type="uml:State" xmi:id="_pvLhgzkkEeaNu7tKUcqzfQ" name="State1"/>
+ <transition xmi:id="_pvLhhDkkEeaNu7tKUcqzfQ" name="Initial" source="_pvLhgjkkEeaNu7tKUcqzfQ" target="_pvLhgzkkEeaNu7tKUcqzfQ">
+ <eAnnotations xmi:id="_pvLhhTkkEeaNu7tKUcqzfQ" source="uml2.alias">
+ <details xmi:id="_pvLhhjkkEeaNu7tKUcqzfQ" key="Initial"/>
+ </eAnnotations>
+ </transition>
+ </region>
+ </ownedBehavior>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_rdlkEDkkEeaNu7tKUcqzfQ" name="P">
+ <packagedElement xmi:type="uml:Collaboration" xmi:id="_rdlkEjkkEeaNu7tKUcqzfQ" name="P" clientDependency="_rdvVFzkkEeaNu7tKUcqzfQ _rdvVGDkkEeaNu7tKUcqzfQ">
+ <interfaceRealization xmi:id="_rdvVFzkkEeaNu7tKUcqzfQ" name="" supplier="_rdvVETkkEeaNu7tKUcqzfQ" client="_rdlkEjkkEeaNu7tKUcqzfQ" contract="_rdvVETkkEeaNu7tKUcqzfQ"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_rdvVETkkEeaNu7tKUcqzfQ" name="P">
+ <eAnnotations xmi:id="_rdvVEjkkEeaNu7tKUcqzfQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details xmi:id="_rdvVEzkkEeaNu7tKUcqzfQ" key="ProtocolRole"/>
+ </eAnnotations>
+ <ownedOperation xmi:id="_wP74wjkkEeaNu7tKUcqzfQ" name="response"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_rdvVFDkkEeaNu7tKUcqzfQ" name="P~">
+ <eAnnotations xmi:id="_rdvVFTkkEeaNu7tKUcqzfQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <details xmi:id="_rdvVFjkkEeaNu7tKUcqzfQ" key="ProtocolRole"/>
+ </eAnnotations>
+ <ownedOperation xmi:id="_vPtx4TkkEeaNu7tKUcqzfQ" name="request"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Usage" xmi:id="_rdvVGDkkEeaNu7tKUcqzfQ" supplier="_rdvVFDkkEeaNu7tKUcqzfQ" client="_rdlkEjkkEeaNu7tKUcqzfQ"/>
+ <packagedElement xmi:type="uml:AnyReceiveEvent" xmi:id="_rdvVGTkkEeaNu7tKUcqzfQ" name="*"/>
+ <packagedElement xmi:type="uml:CallEvent" xmi:id="_vPkn8DkkEeaNu7tKUcqzfQ" operation="_vPtx4TkkEeaNu7tKUcqzfQ">
+ <name xsi:nil="true"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:CallEvent" xmi:id="_wP74wDkkEeaNu7tKUcqzfQ" operation="_wP74wjkkEeaNu7tKUcqzfQ">
+ <name xsi:nil="true"/>
+ </packagedElement>
+ </packagedElement>
+ <profileApplication xmi:id="_j3161zkkEeaNu7tKUcqzfQ">
+ <eAnnotations xmi:id="_j3162DkkEeaNu7tKUcqzfQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_j3162TkkEeaNu7tKUcqzfQ">
+ <eAnnotations xmi:id="_j3162jkkEeaNu7tKUcqzfQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_j3162zkkEeaNu7tKUcqzfQ">
+ <eAnnotations xmi:id="_j3163DkkEeaNu7tKUcqzfQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_4OVBUD0TEeKt-L0gyEptgQ?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_j3163TkkEeaNu7tKUcqzfQ">
+ <eAnnotations xmi:id="_j3163jkkEeaNu7tKUcqzfQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://RT_PROPERTIES/UMLRealTime.epx#_3TUzoXq6Ed2hSeAAWZznoA?UMLRealTime/UMLRealTime?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://RT_PROPERTIES/UMLRealTime.epx#_uTDwIRHVEdu19OChlR9tHg?UMLRealTime?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_j3163zkkEeaNu7tKUcqzfQ">
+ <eAnnotations xmi:id="_j3164DkkEeaNu7tKUcqzfQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://RT_PROPERTIES/InteractionProfile.epx#_dDVwwX8wEd2ags_Lr77Vow?InteractionProfile/InteractionProfile?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://RT_PROPERTIES/InteractionProfile.epx#_LyeQ4HnVEd2No7ra0rEeOg?InteractionProfile?"/>
+ </profileApplication>
+ </uml:Package>
+ <UMLRealTime:Capsule xmi:id="_l2WOwjkkEeaNu7tKUcqzfQ" base_Class="_lvfY0DkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:Capsule xmi:id="_oh_8sDkkEeaNu7tKUcqzfQ" base_Class="_oh2LsDkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:CapsulePart xmi:id="_oiJGoDkkEeaNu7tKUcqzfQ" base_Property="_oh_8vTkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:Capsule xmi:id="_pvVSgDkkEeaNu7tKUcqzfQ" base_Class="_pvBwgDkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:CapsulePart xmi:id="_pvVSjjkkEeaNu7tKUcqzfQ" base_Property="_pvVSjTkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:ProtocolContainer xmi:id="_rdlkETkkEeaNu7tKUcqzfQ" base_Package="_rdlkEDkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:Protocol xmi:id="_rdvVEDkkEeaNu7tKUcqzfQ" base_Collaboration="_rdlkEjkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTPort xmi:id="_rd4fADkkEeaNu7tKUcqzfQ" base_Port="_rdvVGjkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTPort xmi:id="_uRbksDkkEeaNu7tKUcqzfQ" base_Port="_uRSawDkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:OutEvent xmi:id="_vPtx4DkkEeaNu7tKUcqzfQ" base_CallEvent="_vPkn8DkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:InEvent xmi:id="_wP74wTkkEeaNu7tKUcqzfQ" base_CallEvent="_wP74wDkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTConnector xmi:id="_xVE74jkkEeaNu7tKUcqzfQ" base_Connector="_xU7K4DkkEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTPort xmi:id="_emziETkoEeaNu7tKUcqzfQ" base_Port="_emziEDkoEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTPort xmi:id="_frpDMTkoEeaNu7tKUcqzfQ" isConjugate="true" base_Port="_frpDMDkoEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTConnector xmi:id="_jwQIIzkoEeaNu7tKUcqzfQ" base_Connector="_jwQIIDkoEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTPort xmi:id="_oE9ekTkoEeaNu7tKUcqzfQ" isConjugate="true" base_Port="_oE9ekDkoEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTPort xmi:id="_rc31kTkoEeaNu7tKUcqzfQ" isConjugate="true" base_Port="_rc31kDkoEeaNu7tKUcqzfQ"/>
+ <UMLRealTime:RTConnector xmi:id="_tY_kADkoEeaNu7tKUcqzfQ" base_Connector="_tYP9IDkoEeaNu7tKUcqzfQ"/>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/first.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/first.emx
new file mode 100644
index 0000000..529b7dc
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/first.emx
@@ -0,0 +1,38 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<!--Rational Software Architect RealTime Edition 9.1.2-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<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:today="http:///schemas/today/__PMdsJBVEea9gsZP7hrDPQ/2" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xsi:schemaLocation="http:///schemas/today/__PMdsJBVEea9gsZP7hrDPQ/2 today.epx#__PMdsZBVEea9gsZP7hrDPQ?today/today?">
+ <uml:Package xmi:id="_JExbsJBWEea9gsZP7hrDPQ" name="first">
+ <eAnnotations xmi:id="_JExbsZBWEea9gsZP7hrDPQ" source="uml2.diagrams"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_OLZ-UJBWEea9gsZP7hrDPQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Q_aXAJBWEea9gsZP7hrDPQ" name="Class2"/>
+ <profileApplication xmi:id="_JExbtJBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:id="_JExbtZBWEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_JExbtpBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:id="_JExbt5BWEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_JExbuJBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:id="_JExbuZBWEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_4OVBUD0TEeKt-L0gyEptgQ?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_MiMk0JBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:id="_MiMk0ZBWEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="today.epx#__PMdsZBVEea9gsZP7hrDPQ?today/today?"/>
+ </eAnnotations>
+ <appliedProfile href="today.epx#_0UUrkJBVEea9gsZP7hrDPQ?today?"/>
+ </profileApplication>
+ </uml:Package>
+ <today:Foo xmi:id="_QLtCIJBWEea9gsZP7hrDPQ" base_Classifier="_OLZ-UJBWEea9gsZP7hrDPQ"/>
+ <today:Bar xmi:id="_RxU8IJBWEea9gsZP7hrDPQ" base_Classifier="_Q_aXAJBWEea9gsZP7hrDPQ"/>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Blank Package.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Blank Package.emx
new file mode 100644
index 0000000..a2fe5c1
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Blank Package.emx
@@ -0,0 +1,320 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package 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:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_u4_BkLZ7EeOu-9meM8ButQ" name="Blank Package">
+ <eAnnotations xmi:id="_7AeiEbZ8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Package" href="Package%20-%20Fragment.efx#_0OuW4LZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment?"/>
+ <references xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_u4_BkbZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_u4_BkrZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_u4_BkrZ7EeOu-9meM8ButQ" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_zcSNULZ7EeOu-9meM8ButQ" element="_zb_SYLZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zcSNUrZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_zcSNU7Z7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zcSNVLZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zcSNVbZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zcu5QLZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_zcu5QbZ7EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_9XQosbZ7EeOu-9meM8ButQ" element="_9XQosLZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9XQos7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_9XQotLZ7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9XQotbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9XQotrZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9XQot7Z7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9XQouLZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9XQoubZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9XQourZ7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_9XQou7Z7EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9XQosrZ7EeOu-9meM8ButQ" x="1854" y="1009"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zcSNUbZ7EeOu-9meM8ButQ" x="402" y="528" width="8069" height="5291"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_zve2I7Z7EeOu-9meM8ButQ" element="_zve2ILZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zve2JbZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_zve2JrZ7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zve2J7Z7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zve2KLZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zve2KbZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_zve2KrZ7EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_2S-toLZ7EeOu-9meM8ButQ" element="_2S1jsLZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2S-torZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_2S-to7Z7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2S-tpLZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2S-tpbZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2S-tprZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2S-tp7Z7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2S-tqLZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2S-tqbZ7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_2S-tqrZ7EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2S-tobZ7EeOu-9meM8ButQ" x="1083" y="951"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_2ZrLgbZ7EeOu-9meM8ButQ" element="_2ZrLgLZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2ZrLg7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_2ZrLhLZ7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2ZrLhbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2ZrLhrZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2ZrLh7Z7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2ZrLiLZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2ZrLibZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2ZrLirZ7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_2ZrLi7Z7EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2ZrLgrZ7EeOu-9meM8ButQ" x="4647" y="819"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zve2JLZ7EeOu-9meM8ButQ" x="10698" y="792" width="8837" height="5820"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_0B7RA7Z7EeOu-9meM8ButQ" element="_0B7RALZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0B7RBbZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_0B7RBrZ7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0B7RB7Z7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0B7RCLZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0B7RCbZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_0B7RCrZ7EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_7yPLobZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_7yPLo7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_7yPLpLZ7EeOu-9meM8ButQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7yPLpbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7yPLprZ7EeOu-9meM8ButQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7yPLp7Z7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7yPLqLZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_7yPLqbZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_7yY8oLZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_7yY8obZ7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <element xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7yPLorZ7EeOu-9meM8ButQ" x="2139" y="819"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0B7RBLZ7EeOu-9meM8ButQ" x="270" y="7788" width="7805" height="5000"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_0O3g0LZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0O3g0rZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_0O3g07Z7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0O3g1LZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0O3g1bZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0O3g1rZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_0O3g17Z7EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_2xxicbZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2xxic7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_2xxidLZ7EeOu-9meM8ButQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xxidbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xxidrZ7EeOu-9meM8ButQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xxid7Z7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2x7TcLZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2x7TcbZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2x7TcrZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2x7Tc7Z7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <element xmi:type="uml:Interface" href="Package%20-%20Fragment.efx#_2xxicLZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Interface1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2xxicrZ7EeOu-9meM8ButQ" x="3944" y="530"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_29FakbZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_29Fak7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_29FalLZ7EeOu-9meM8ButQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_29FalbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_29FalrZ7EeOu-9meM8ButQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_29Fal7Z7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_29FamLZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_29FambZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_29FamrZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_29Fam7Z7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <element xmi:type="uml:Interface" href="Package%20-%20Fragment.efx#_29FakLZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Interface2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_29FakrZ7EeOu-9meM8ButQ" x="425" y="689"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_AxXYEbZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_AxXYE7Z8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_AxXYFLZ8EeOu-9meM8ButQ" key="ImageModeStyle" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_AxXYFbZ8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_AxXYFrZ8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_AxXYF7Z8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_AxXYGLZ8EeOu-9meM8ButQ" type="CommentBody"/>
+ <element xmi:type="uml:Comment" href="Package%20-%20Fragment.efx#_AxXYELZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/%3CComment%3E?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AxXYErZ8EeOu-9meM8ButQ" x="7023" y="423"/>
+ </children>
+ </children>
+ <element xmi:type="uml:Package" href="Package%20-%20Fragment.efx#_0OuW4LZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0O3g0bZ7EeOu-9meM8ButQ" x="9900" y="7788" width="16298" height="5132"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_3d0JELZ7EeOu-9meM8ButQ" element="_3dhOILZ7EeOu-9meM8ButQ" source="_2ZrLgbZ7EeOu-9meM8ButQ" target="_2xxicbZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3d0JErZ7EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_3d0JFLZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_3d0JFbZ7EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3d0JE7Z7EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3d0JEbZ7EeOu-9meM8ButQ" points="[10, 24, -87, -261]$[103, 254, 6, -31]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4kVsQLZ7EeOu-9meM8ButQ" id="(0.4936086529006883,0.7959183673469388)"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_3qUUALZ7EeOu-9meM8ButQ" element="_3qKjALZ7EeOu-9meM8ButQ" source="_2S-toLZ7EeOu-9meM8ButQ" target="_29FakbZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3qUUArZ7EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_3qUUBLZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_3qUUBbZ7EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3qUUA7Z7EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3qUUAbZ7EeOu-9meM8ButQ" points="[8, 24, -76, -265]$[91, 319, 7, 30]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_-a86UbZ7EeOu-9meM8ButQ" element="_-a86ULZ7EeOu-9meM8ButQ" source="_9XQosbZ7EeOu-9meM8ButQ" target="_7yPLobZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-a86U7Z7EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-a86VbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-a86VrZ7EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-a86VLZ7EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-a86UrZ7EeOu-9meM8ButQ" points="[4, 24, -45, -221]$[-25, 243, -74, -2]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_CIPrcLZ8EeOu-9meM8ButQ" type="Reference" source="_AxXYEbZ8EeOu-9meM8ButQ" target="_7yPLobZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CIPrcbZ8EeOu-9meM8ButQ" points="[0, 740, 14823, 279]$[0, 1880, 14823, 1419]$[-14784, 1880, 39, 1419]$[-14784, 1266, 39, 805]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_u4_Bk7Z7EeOu-9meM8ButQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_u4_BlLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_u4_BlbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_u4_BlrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_u4_Bl7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_u4_BmLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_u4_BmbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_u4_BmrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_u4_Bm7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_u4_BnLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_u4_BnbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_u4_BnrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_u4_Bn7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_u4_BoLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_u4_BobZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_u4_BorZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_u4_Bo7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_u4_BpLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_u4_BpbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_u4_BprZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_u4_Bp7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_u4_BqLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_u4_BqbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_u4_BqrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_u4_Bq7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_u4_BrLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_u4_BrbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_u4_BrrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_u4_Br7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_u4_BsLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_u4_BsbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_u4_BsrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_u4_Bs7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_u4_BtLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_u4_BtbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_u4_BtrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_u4_Bt7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_u4_BuLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_u4_BubZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_u4_BurZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_u4_Bu7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_u4_BvLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_u4_BvbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_u4_BvrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_u4_Bv7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_u4_BwLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_u4_BwbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_u4_BwrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_u4_Bw7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_u4_BxLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_u4_BxbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_u4_BxrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_u4_Bx7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_u4_ByLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_u4_BybZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_u4_ByrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_u4_By7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_u4_BzLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_u4_BzbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_u4_BzrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_u4_Bz7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_u4_B0LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_u4_B0bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_u4_B0rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_u4_B07Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_u4_B1LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_u4_B1bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_u4_B1rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_u4_B17Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_u4_B2LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_u4_B2bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_u4_B2rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_u4_B27Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_u4_B3LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_u4_B3bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_u4_B3rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_u4_B37Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_u4_B4LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_u4_B4bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_u4_B4rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_u4_B47Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_u4_B5LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_u4_B5bZ7EeOu-9meM8ButQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Package" xmi:id="_zb_SYLZ7EeOu-9meM8ButQ" name="Package1">
+ <eAnnotations xmi:id="_zcJDYLZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_zcJDYbZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_zcJDYbZ7EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_9XQosLZ7EeOu-9meM8ButQ" name="Class - Standard" clientDependency="_-a86ULZ7EeOu-9meM8ButQ"/>
+ <packagedElement xmi:type="uml:Realization" xmi:id="_-a86ULZ7EeOu-9meM8ButQ" client="_9XQosLZ7EeOu-9meM8ButQ">
+ <supplier xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_zve2ILZ7EeOu-9meM8ButQ" name="Package - Standard">
+ <eAnnotations xmi:id="_zve2IbZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_zve2IrZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_zve2IrZ7EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_2S1jsLZ7EeOu-9meM8ButQ" name="Class1" clientDependency="_3qKjALZ7EeOu-9meM8ButQ"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_2ZrLgLZ7EeOu-9meM8ButQ" name="Class2" clientDependency="_3dhOILZ7EeOu-9meM8ButQ"/>
+ <packagedElement xmi:type="uml:Realization" xmi:id="_3dhOILZ7EeOu-9meM8ButQ" client="_2ZrLgLZ7EeOu-9meM8ButQ">
+ <supplier xmi:type="uml:Interface" href="Package%20-%20Fragment.efx#_2xxicLZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Interface1?"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Realization" xmi:id="_3qKjALZ7EeOu-9meM8ButQ" client="_2S1jsLZ7EeOu-9meM8ButQ">
+ <supplier xmi:type="uml:Interface" href="Package%20-%20Fragment.efx#_29FakLZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Interface2?"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_0B7RALZ7EeOu-9meM8ButQ" name="Package3">
+ <eAnnotations xmi:id="_0B7RAbZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_0B7RArZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_0B7RArZ7EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" href="Package%20-%20Fragment.efx#_0OuW4LZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment?"/>
+ <profileApplication xmi:id="_u4_B5rZ7EeOu-9meM8ButQ">
+ <eAnnotations xmi:id="_u4_B57Z7EeOu-9meM8ButQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_u4_B6LZ7EeOu-9meM8ButQ">
+ <eAnnotations xmi:id="_u4_B6bZ7EeOu-9meM8ButQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_u4_B6rZ7EeOu-9meM8ButQ">
+ <eAnnotations xmi:id="_u4_B67Z7EeOu-9meM8ButQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Class3.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Class3.efx
new file mode 100644
index 0000000..6c03e62
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Class3.efx
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Class xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmi:id="_ONlFkLZ8EeOu-9meM8ButQ" name="Class3">
+ <eAnnotations xmi:id="_D3Ad4LZ9EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Package%20-%20Fragment.efx#_0OuW4LZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment?"/>
+ </eAnnotations>
+ <generalization xmi:id="_OzOJQLZ8EeOu-9meM8ButQ">
+ <general xmi:type="uml:Class" href="Package%20-%20Fragment.efx#_ODdgQLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class1?"/>
+ </generalization>
+ <ownedAttribute xmi:id="_OgVCcbZ8EeOu-9meM8ButQ" name="class2" visibility="private">
+ <type xmi:type="uml:Class" href="Package%20-%20Fragment.efx#_OHLioLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class2?"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_OgeMYbZ8EeOu-9meM8ButQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OgeMYLZ8EeOu-9meM8ButQ" value="1"/>
+ <association href="Package%20-%20Fragment.efx#_OgVCcLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/%3CAssociation%3E?"/>
+ </ownedAttribute>
+ <ownedOperation xmi:id="_QeoiMLZ8EeOu-9meM8ButQ" name="Operation1" visibility="private">
+ <ownedParameter xmi:id="_Uw0wILZ8EeOu-9meM8ButQ" name="Parameter1" direction="return">
+ <type xmi:type="uml:Class" href="Blank%20Package.emx#_9XQosLZ7EeOu-9meM8ButQ?Blank%20Package/Package1/Class%20-%20Standard?"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:id="_QgHv8LZ8EeOu-9meM8ButQ" name="Operation2"/>
+ <ownedOperation xmi:id="_Qh54oLZ8EeOu-9meM8ButQ" name="Operation3"/>
+ <ownedOperation xmi:id="_QjsoYLZ8EeOu-9meM8ButQ" name="Operation4"/>
+ <ownedOperation xmi:id="_QlexELZ8EeOu-9meM8ButQ" name="Operation5"/>
+</uml:Class>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Interface - Fragment.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Interface - Fragment.efx
new file mode 100644
index 0000000..33f8347
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Interface - Fragment.efx
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Interface xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmi:id="_7yPLoLZ7EeOu-9meM8ButQ" name="Interface - Fragment">
+ <eAnnotations xmi:id="__TtR0bZ8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragments"/>
+ <eAnnotations xmi:id="__TtR0LZ8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Blank%20Package.emx#_0B7RALZ7EeOu-9meM8ButQ?Blank%20Package/Package3?"/>
+ </eAnnotations>
+</uml:Interface>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Package - Fragment.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Package - Fragment.efx
new file mode 100644
index 0000000..d1f0068
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/fragments/Package - Fragment.efx
@@ -0,0 +1,266 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package 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.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_0OuW4LZ7EeOu-9meM8ButQ" name="Package - Fragment">
+ <eAnnotations xmi:id="_D3Ad4bZ9EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Class" href="Class3.efx#_ONlFkLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_7AeiELZ8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Blank%20Package.emx#_u4_BkLZ7EeOu-9meM8ButQ?Blank%20Package?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_0OuW4bZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_0OuW4rZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_0OuW4rZ7EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_LfXL0LZ8EeOu-9meM8ButQ" type="Class" name="ClassDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_MJ6ksbZ8EeOu-9meM8ButQ" element="_MJ6ksLZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_MJ6ks7Z8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_MJ6ktLZ8EeOu-9meM8ButQ" key="ImageModeStyle" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_MJ6ktbZ8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_MJ6ktrZ8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_MJ6kt7Z8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_MJ6kuLZ8EeOu-9meM8ButQ" type="CommentBody"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MJ6ksrZ8EeOu-9meM8ButQ" x="846" y="1640" width="4680" height="1639"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_ODdgQbZ8EeOu-9meM8ButQ" element="_ODdgQLZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ODdgQ7Z8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_ODdgRLZ8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ODdgRbZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ODdgRrZ8EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ODdgR7Z8EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ODdgSLZ8EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ODdgSbZ8EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ODdgSrZ8EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_ODdgS7Z8EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ODdgQrZ8EeOu-9meM8ButQ" x="1032" y="7158"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_OHLiobZ8EeOu-9meM8ButQ" element="_OHLioLZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OHLio7Z8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_OHLipLZ8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OHLipbZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OHLiprZ8EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OHLip7Z8EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OHLiqLZ8EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OHLiqbZ8EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OHLiqrZ8EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_OHLiq7Z8EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OHLiorZ8EeOu-9meM8ButQ" x="9108" y="3168"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_ONu2kLZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ONu2krZ8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_ONu2k7Z8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ONu2lLZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ONu2lbZ8EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ONu2lrZ8EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ONu2l7Z8EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ONu2mLZ8EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ONu2mbZ8EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_ONu2mrZ8EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="Class3.efx#_ONlFkLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ONu2kbZ8EeOu-9meM8ButQ" x="8184" y="10164" width="5446" height="4071"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_mtbqM7Z9EeOu-9meM8ButQ" element="_mtbqMLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_mtbqNbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_mtbqNrZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_mtlbMLZ9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_mtlbMbZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_mtlbMrZ9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_mtlbM7Z9EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_o6Bdk7Z9EeOu-9meM8ButQ" element="_o6BdkLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_o6BdlbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_o6BdlrZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o6Bdl7Z9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o6BdmLZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o6BdmbZ9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_o6LOkLZ9EeOu-9meM8ButQ" type="PackageContents" collapsed="true" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o6BdlLZ9EeOu-9meM8ButQ" x="404" y="138" width="11482" height="5688"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pLu4o7Z9EeOu-9meM8ButQ" element="_pLu4oLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pLu4pbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pLu4prZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLu4p7Z9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLu4qLZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLu4qbZ9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pL4CkLZ9EeOu-9meM8ButQ" type="PackageContents" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pLu4pLZ9EeOu-9meM8ButQ" x="933" y="1593" width="9101" height="3307"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pa59E7Z9EeOu-9meM8ButQ" element="_pa59ELZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pa59FbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pa59FrZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pa59F7Z9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pa59GLZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pa59GbZ9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pa59GrZ9EeOu-9meM8ButQ" type="PackageContents" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pa59FLZ9EeOu-9meM8ButQ" x="1992" y="2889" width="5235"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mtbqNLZ9EeOu-9meM8ButQ" x="14916" y="1188" width="13122" height="7751"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_OgxHULZ8EeOu-9meM8ButQ" element="_OgVCcLZ8EeOu-9meM8ButQ" source="_ONu2kLZ8EeOu-9meM8ButQ" target="_OHLiobZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHUrZ8EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHVLZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHVbZ8EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OgxHU7Z8EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHVrZ8EeOu-9meM8ButQ" type="ToMultiplicityLabel" element="_OgeMYrZ8EeOu-9meM8ButQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHWLZ8EeOu-9meM8ButQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHV7Z8EeOu-9meM8ButQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHWbZ8EeOu-9meM8ButQ" type="ToRoleLabel" element="_OgeMYrZ8EeOu-9meM8ButQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHW7Z8EeOu-9meM8ButQ" type="ToRole"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHWrZ8EeOu-9meM8ButQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHXLZ8EeOu-9meM8ButQ" type="FromMultiplicityLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHXrZ8EeOu-9meM8ButQ" type="FromMultiplicity"/>
+ <element xmi:type="uml:Property" href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHXbZ8EeOu-9meM8ButQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHX7Z8EeOu-9meM8ButQ" type="FromRoleLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHYbZ8EeOu-9meM8ButQ" type="FromRole"/>
+ <element xmi:type="uml:Property" href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHYLZ8EeOu-9meM8ButQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHYrZ8EeOu-9meM8ButQ" type="ToQualifierLabel" element="_OgeMYrZ8EeOu-9meM8ButQ">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OgxHZLZ8EeOu-9meM8ButQ" type="QualifierCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHY7Z8EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHZbZ8EeOu-9meM8ButQ" type="FromQualifierLabel">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OgxHZ7Z8EeOu-9meM8ButQ" type="QualifierCompartment"/>
+ <element xmi:type="uml:Property" href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHZrZ8EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHaLZ8EeOu-9meM8ButQ" type="ToConstraintLabel" element="_OgeMYrZ8EeOu-9meM8ButQ">
+ <children xmi:type="notation:ListCompartment" xmi:id="_OgxHarZ8EeOu-9meM8ButQ" type="ToConstraintCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHabZ8EeOu-9meM8ButQ" y="1058"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHa7Z8EeOu-9meM8ButQ" type="FromConstraintLabel">
+ <children xmi:type="notation:ListCompartment" xmi:id="_OgxHbbZ8EeOu-9meM8ButQ" type="FromConstraintCompartment"/>
+ <element xmi:type="uml:Property" href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHbLZ8EeOu-9meM8ButQ" y="1058"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OgxHUbZ8EeOu-9meM8ButQ" points="[15, -24, -83, 148]$[97, -148, -1, 24]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_OzOJQbZ8EeOu-9meM8ButQ" source="_ONu2kLZ8EeOu-9meM8ButQ" target="_ODdgQbZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OzOJQ7Z8EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OzX6QLZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OzX6QbZ8EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OzOJRLZ8EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <element xmi:type="uml:Generalization" href="Class3.efx#_OzOJQLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/%3CGeneralization%3E?"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OzOJQrZ8EeOu-9meM8ButQ" points="[-35, -24, 211, 154]$[-283, -183, -37, -5]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <ownedComment xmi:id="_AxXYELZ8EeOu-9meM8ButQ">
+ <annotatedElement xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ <body><p>Annotates an element located in another fragment</p></body>
+ </ownedComment>
+ <ownedComment xmi:id="_MJ6ksLZ8EeOu-9meM8ButQ">
+ <body><p>Class Diagram for a Fragment</p></body>
+ </ownedComment>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_2xxicLZ7EeOu-9meM8ButQ" name="Interface1"/>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_29FakLZ7EeOu-9meM8ButQ" name="Interface2"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ODdgQLZ8EeOu-9meM8ButQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_OHLioLZ8EeOu-9meM8ButQ" name="Class2">
+ <ownedAttribute xmi:id="_OgeMYrZ8EeOu-9meM8ButQ" name="class3" visibility="private" association="_OgVCcLZ8EeOu-9meM8ButQ">
+ <type xmi:type="uml:Class" href="Class3.efx#_ONlFkLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3?"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_OgeMZLZ8EeOu-9meM8ButQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OgeMY7Z8EeOu-9meM8ButQ" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_QA4PMLZ8EeOu-9meM8ButQ" name="attribute1" visibility="private"/>
+ <ownedAttribute xmi:id="_QFC9gLZ8EeOu-9meM8ButQ" name="attribute2" visibility="private"/>
+ <ownedAttribute xmi:id="_QGiLQLZ8EeOu-9meM8ButQ" name="attribute3" visibility="private"/>
+ <ownedAttribute xmi:id="_QILKALZ8EeOu-9meM8ButQ" name="attribute4" visibility="private"/>
+ <ownedAttribute xmi:id="_QJ9SsLZ8EeOu-9meM8ButQ" name="attribute5" visibility="private"/>
+ <ownedAttribute xmi:id="_QLlqYLZ8EeOu-9meM8ButQ" name="attribute6" visibility="private"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" href="Class3.efx#_ONlFkLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3?"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_OgVCcLZ8EeOu-9meM8ButQ">
+ <memberEnd href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <memberEnd href="#_OgeMYrZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class2/class3?"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_mtbqMLZ9EeOu-9meM8ButQ" name="Package1">
+ <eAnnotations xmi:id="_mtbqMbZ9EeOu-9meM8ButQ" source="uml2.diagrams" references="_mtbqMrZ9EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_mtbqMrZ9EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Package" xmi:id="_o6BdkLZ9EeOu-9meM8ButQ" name="Package1">
+ <eAnnotations xmi:id="_o6BdkbZ9EeOu-9meM8ButQ" source="uml2.diagrams" references="_o6BdkrZ9EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_o6BdkrZ9EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_pLu4oLZ9EeOu-9meM8ButQ" name="Package2">
+ <eAnnotations xmi:id="_pLu4obZ9EeOu-9meM8ButQ" source="uml2.diagrams" references="_pLu4orZ9EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_pLu4orZ9EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_pa59ELZ9EeOu-9meM8ButQ" name="Package3">
+ <eAnnotations xmi:id="_pa59EbZ9EeOu-9meM8ButQ" source="uml2.diagrams" references="_pa59ErZ9EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_pa59ErZ9EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_rkYLALZ9EeOu-9meM8ButQ" type="Class" name="ClassDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_r0lxQbZ9EeOu-9meM8ButQ" element="_r0lxQLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r0lxQ7Z9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_r0lxRLZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r0lxRbZ9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r0lxRrZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r0lxR7Z9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r0lxSLZ9EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r0lxSbZ9EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r0lxSrZ9EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_r0lxS7Z9EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r0lxQrZ9EeOu-9meM8ButQ" x="5344" y="5476"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_r5gGcbZ9EeOu-9meM8ButQ" element="_r5gGcLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r5gGc7Z9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_r5gGdLZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5gGdbZ9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5gGdrZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5gGd7Z9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5gGeLZ9EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5gGebZ9EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5gGerZ9EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_r5gGe7Z9EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r5gGcrZ9EeOu-9meM8ButQ" x="16218" y="5688"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_scT4kbZ9EeOu-9meM8ButQ" element="_scT4kLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_scT4k7Z9EeOu-9meM8ButQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_scT4lLZ9EeOu-9meM8ButQ" key="ImageModeStyle" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_scT4lbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_scT4lrZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_scT4l7Z9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_scT4mLZ9EeOu-9meM8ButQ" type="CommentBody"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_scT4krZ9EeOu-9meM8ButQ" x="7249" y="926" width="8966" height="3676"/>
+ </children>
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <ownedComment xmi:id="_scT4kLZ9EeOu-9meM8ButQ">
+ <body><p>Deep nested ClassDiagram:</p><p>Blank Package::Package - Fragment::Package1::Package3</p></body>
+ </ownedComment>
+ <packagedElement xmi:type="uml:Class" xmi:id="_r0lxQLZ9EeOu-9meM8ButQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_r5gGcLZ9EeOu-9meM8ButQ" name="Class2"/>
+ </packagedElement>
+ </packagedElement>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/postprocess.qvto b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/postprocess.qvto
new file mode 100644
index 0000000..407b8b8
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/postprocess.qvto
@@ -0,0 +1,36 @@
+/*****************************************************************************
+ * Copyright (c) 2017 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+
+transformation postprocess(inout semantics : uml, inout graphics : notation);
+
+main() {
+ semantics.objects()[uml::NamedElement].map postprocess();
+ graphics.rootObjects()[notation::Diagram].map postprocess();
+}
+
+mapping inout uml::NamedElement::postprocess()
+{
+ if (self.name <> null) {
+ self.name := '123 ' + self.name;
+ }
+}
+
+mapping inout notation::Diagram::postprocess()
+{
+ if (self.name <> null) {
+ self.name := '123 ' + self.name;
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/today.profile.uml b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/today.profile.uml
new file mode 100644
index 0000000..de54d55
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/today.profile.uml
@@ -0,0 +1,137 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Profile xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_0UUrkJBVEea9gsZP7hrDPQ" name="today" metamodelReference="_0UUrkZBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0UUrlZBVEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <contents xmi:type="ecore:EPackage" xmi:id="_lojlQZBWEea9gsZP7hrDPQ" name="today" nsURI="http:///schemas/today/_lojlQJBWEea9gsZP7hrDPQ/4" nsPrefix="today">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_lojlQpBWEea9gsZP7hrDPQ" name="Foo">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lojlQ5BWEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_317KEJBVEea9gsZP7hrDPQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_lojlRJBWEea9gsZP7hrDPQ" name="base_Classifier" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Classifier"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_lojlRpBWEea9gsZP7hrDPQ" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_lojlSJBWEea9gsZP7hrDPQ" name="Bar">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lojlSZBWEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_8_Y-QJBVEea9gsZP7hrDPQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_lojlSpBWEea9gsZP7hrDPQ" name="base_Classifier" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Classifier"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_lojlTJBWEea9gsZP7hrDPQ" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="__PMdsZBVEea9gsZP7hrDPQ" name="today" nsURI="http:///schemas/today/__PMdsJBVEea9gsZP7hrDPQ/2" nsPrefix="today">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="__PMdspBVEea9gsZP7hrDPQ" name="Foo">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__PMds5BVEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_317KEJBVEea9gsZP7hrDPQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="__PMdtJBVEea9gsZP7hrDPQ" name="base_Classifier" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Classifier"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="__PMdtpBVEea9gsZP7hrDPQ" name="Bar">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__PMdt5BVEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_8_Y-QJBVEea9gsZP7hrDPQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="__PMduJBVEea9gsZP7hrDPQ" name="base_Classifier" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Classifier"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_AYWeIJBWEea9gsZP7hrDPQ" source="uml2.versions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_AYWeIZBWEea9gsZP7hrDPQ" key="2" value="1.0"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ml8akJBWEea9gsZP7hrDPQ" key="4" value="2.0"/>
+ </eAnnotations>
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_0UUrkZBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_72h4xpBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_72h4x5BVEea9gsZP7hrDPQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_317KEJBVEea9gsZP7hrDPQ" name="Foo">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_72h4yJBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_72h4yZBVEea9gsZP7hrDPQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_6lUIgpBVEea9gsZP7hrDPQ" name="base_Classifier" association="_6lUIgJBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_72h4ypBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_72h4y5BVEea9gsZP7hrDPQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PAz_sJB_EeaU9eIeWn3qjg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PAz_sZB_EeaU9eIeWn3qjg" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ipEVUpBWEea9gsZP7hrDPQ" name="base_Property" association="_ipEVUJBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jI9WXJBWEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jI9WXZBWEea9gsZP7hrDPQ" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PAz_spB_EeaU9eIeWn3qjg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PAz_s5B_EeaU9eIeWn3qjg" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_6lUIgJBVEea9gsZP7hrDPQ" name="Classifier_Foo" memberEnd="_6lUIgZBVEea9gsZP7hrDPQ _6lUIgpBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_72h4zJBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_72h4zZBVEea9gsZP7hrDPQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_6lUIgZBVEea9gsZP7hrDPQ" name="extension_Foo" type="_317KEJBVEea9gsZP7hrDPQ" aggregation="composite" association="_6lUIgJBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_72h4zpBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_72h4z5BVEea9gsZP7hrDPQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_8_Y-QJBVEea9gsZP7hrDPQ" name="Bar">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__PMdupBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__PMdu5BVEea9gsZP7hrDPQ" key="addedInVersion" value="2"/>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_-955YpBVEea9gsZP7hrDPQ" name="base_Classifier" association="_-955YJBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__PMdvJBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__PMdvZBVEea9gsZP7hrDPQ" key="addedInVersion" value="2"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Classifier"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PAz_tJB_EeaU9eIeWn3qjg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PAz_tZB_EeaU9eIeWn3qjg" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_lS8hopBWEea9gsZP7hrDPQ" name="base_Property" association="_lS8hoJBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lojlTpBWEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lojlT5BWEea9gsZP7hrDPQ" key="addedInVersion" value="4"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_PAz_tpB_EeaU9eIeWn3qjg"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_PAz_t5B_EeaU9eIeWn3qjg" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_-955YJBVEea9gsZP7hrDPQ" name="Classifier_Bar" memberEnd="_-955YZBVEea9gsZP7hrDPQ _-955YpBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__PMdvpBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__PMdv5BVEea9gsZP7hrDPQ" key="addedInVersion" value="2"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_-955YZBVEea9gsZP7hrDPQ" name="extension_Bar" type="_8_Y-QJBVEea9gsZP7hrDPQ" aggregation="composite" association="_-955YJBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="__PMdwJBVEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="__PMdwZBVEea9gsZP7hrDPQ" key="addedInVersion" value="2"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_ipEVUJBWEea9gsZP7hrDPQ" name="Property_Foo" memberEnd="_ipEVUZBWEea9gsZP7hrDPQ _ipEVUpBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jI9WXpBWEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jI9WX5BWEea9gsZP7hrDPQ" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_ipEVUZBWEea9gsZP7hrDPQ" name="extension_Foo" type="_317KEJBVEea9gsZP7hrDPQ" aggregation="composite" association="_ipEVUJBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jI9WYJBWEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jI9WYZBWEea9gsZP7hrDPQ" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_lS8hoJBWEea9gsZP7hrDPQ" name="Property_Bar" memberEnd="_lS8hoZBWEea9gsZP7hrDPQ _lS8hopBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lojlUJBWEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lojlUZBWEea9gsZP7hrDPQ" key="addedInVersion" value="4"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_lS8hoZBWEea9gsZP7hrDPQ" name="extension_Bar" type="_8_Y-QJBVEea9gsZP7hrDPQ" aggregation="composite" association="_lS8hoJBWEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_lojlUpBWEea9gsZP7hrDPQ" source="uml2.extensions">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_lojlU5BWEea9gsZP7hrDPQ" key="addedInVersion" value="4"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_0UUrkpBVEea9gsZP7hrDPQ">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_0UUrk5BVEea9gsZP7hrDPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/dsmlvalidation#/"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="pathmap://DSMLValidation_PROFILES/PapyrusValidationRuleDSML.uml#__sUW0OhNEeCjcc2EgK3Uwg"/>
+ </profileApplication>
+</uml:Profile>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug507860/StructureWithPort.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug507860/StructureWithPort.emx
new file mode 100644
index 0000000..c0c2e80
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug507860/StructureWithPort.emx
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Model xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_xUJVZK1wEeaq1oQq7DV_7g" name="Blank Package">
+ <eAnnotations xmi:id="_xUJVZa1wEeaq1oQq7DV_7g" source="uml2.diagrams" references="_xUJVZq1wEeaq1oQq7DV_7g">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_xUJVZq1wEeaq1oQq7DV_7g" type="Class" name="Main"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_xUJVZ61wEeaq1oQq7DV_7g" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_xUJVaK1wEeaq1oQq7DV_7g" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_xUJVaa1wEeaq1oQq7DV_7g" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_xUJVaq1wEeaq1oQq7DV_7g" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_xUJVa61wEeaq1oQq7DV_7g">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Class" xmi:id="_5O4XUK1wEeaq1oQq7DV_7g" name="Class1">
+ <eAnnotations xmi:id="_5O4XUa1wEeaq1oQq7DV_7g" source="uml2.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_5O4XUq1wEeaq1oQq7DV_7g" type="Structure" element="_5O4XUK1wEeaq1oQq7DV_7g" name="compositediagram" measurementUnit="Himetric">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_5O4XU61wEeaq1oQq7DV_7g" type="StructureDiagramFrame" element="_5O4XUK1wEeaq1oQq7DV_7g" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_5O4XVK1wEeaq1oQq7DV_7g" type="StructureCompartment">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_6LIUca_yEeaq1oQq7DV_7g" element="_6LIUcK_yEeaq1oQq7DV_7g" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_6LIUc6_yEeaq1oQq7DV_7g" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_6LIUdK_yEeaq1oQq7DV_7g" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6LIUda_yEeaq1oQq7DV_7g" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_6LIUdq_yEeaq1oQq7DV_7g" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6LIUd6_yEeaq1oQq7DV_7g" type="PartTextCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_6LIUeK_yEeaq1oQq7DV_7g" visible="false" type="PartStructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6LIUcq_yEeaq1oQq7DV_7g" x="4552" y="3336"/>
+ </children>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5O4XVa1wEeaq1oQq7DV_7g" type="Name"/>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_y7ihQa_yEeaq1oQq7DV_7g" element="_y7ihQK_yEeaq1oQq7DV_7g" fontName="Segoe UI" fontHeight="8" showListVisibility="None" showListSignature="true" fillColor="16116705" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_y7ihQ6_yEeaq1oQq7DV_7g" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_y7ihRK_yEeaq1oQq7DV_7g" key="ShowTypeLabelStyle" value="Represents Name and Type Name"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_y7ihRa_yEeaq1oQq7DV_7g" type="PortName">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_y7ihR6_yEeaq1oQq7DV_7g" type="PartTextCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y7ihRq_yEeaq1oQq7DV_7g" y="-133"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y7ihQq_yEeaq1oQq7DV_7g" x="-264" y="3810"/>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5O4XVq1wEeaq1oQq7DV_7g" x="793" y="793"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <ownedAttribute xmi:type="uml:Port" xmi:id="_y7ihQK_yEeaq1oQq7DV_7g" name="port" aggregation="composite"/>
+ <ownedAttribute xmi:id="_6LIUcK_yEeaq1oQq7DV_7g" name="class1" visibility="private" type="_5O4XUK1wEeaq1oQq7DV_7g" aggregation="composite"/>
+ </packagedElement>
+ <profileApplication xmi:id="_xUJVbK1wEeaq1oQq7DV_7g">
+ <eAnnotations xmi:id="_xUJVba1wEeaq1oQq7DV_7g" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_xUJVbq1wEeaq1oQq7DV_7g">
+ <eAnnotations xmi:id="_xUJVb61wEeaq1oQq7DV_7g" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_xUJVcK1wEeaq1oQq7DV_7g">
+ <eAnnotations xmi:id="_xUJVca1wEeaq1oQq7DV_7g" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+</uml:Model>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/concurrent/model.uml b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/concurrent/model.uml
new file mode 100644
index 0000000..a5bce27
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/concurrent/model.uml
@@ -0,0 +1,13279 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_P8R9IKetEeSgvuE9XIvLDQ" name="model">
+ <ownedComment xmi:type="uml:Comment" xmi:id="_VKlOAKetEeSgvuE9XIvLDQ">
+ <body> </body>
+ </ownedComment>
+ <packagedElement xmi:type="uml:Package" xmi:id="_Q2AacKetEeSgvuE9XIvLDQ" name="Package1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_RvIa0KetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_VoB_AKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Vxs4YKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_V6x74KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WC9ngKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WGO98KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WQpeMKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WVQ4cKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WXftEKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WhTwYKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WjsWAKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_WmOFkKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Wqru0KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Wtz7UKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_XWbagKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_XedVIKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_XmDK4KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Xn-dgKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_XsAB4KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_XwKJIKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_XysfwKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_X1hKQKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_X4Mq0KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_X6uaYKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_UcA30KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_UgnrAKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_SWadQKetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Sk160KetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Sq8i0KetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_SxCjwKetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_S1XDEKetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Y87eQKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eQaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eQqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eQ6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eRKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eRaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eRqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eR6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eSKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eSaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eSqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eS6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eTKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y87eTaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eTqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eT6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eUKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eUaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eUqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eU6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eVKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eVaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eVqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y87eV6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Y87eWKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Y87eWaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Y-kdAKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdAaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdAqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdA6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdBKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdBaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdBqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdB6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdCKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdCaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdCqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdC6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdDKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Y-kdDaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdDqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdD6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdEKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdEaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdEqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdE6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdFKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdFaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdFqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Y-kdF6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Y-kdGKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Y-kdGaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZAgWsKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWsaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWsqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWs6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWtKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWtaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWtqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWt6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWuKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWuaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWuqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWu6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWvKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZAgWvaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWvqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWv6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWwKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWwaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWwqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWw6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWxKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWxaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWxqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZAgWx6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZAgWyKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZAgWyaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZCIuYKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuYaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuYqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuY6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuZKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuZaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuZqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuZ6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuaKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuaaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIuaqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIua6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIubKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZCIubaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIubqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIub6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIucKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIucaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIucqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIuc6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIudKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIudaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIudqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZCIud6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZCIueKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZCIueaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZDn8IKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8IaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8IqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8I6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8JKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8JaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8JqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8J6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8KKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8KaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8KqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8K6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8LKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZDn8LaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8LqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8L6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8MKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8MaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8MqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8M6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8NKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8NaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8NqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZDn8N6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZDn8OKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZDn8OaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZFHJ4KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ4aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ4qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ46etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ5KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ5aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ5qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ56etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ6KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ6aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ6qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ66etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ7KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZFHJ7aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ7qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ76etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ8KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ8aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ8qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ86etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ9KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ9aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ9qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZFHJ96etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZFHJ-KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZFHJ-aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZGmXoKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXoaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXoqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXo6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXpKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXpaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXpqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXp6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXqKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXqaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXqqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXq6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXrKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZGmXraetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXrqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXr6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXsKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXsaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXsqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXs6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXtKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXtaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXtqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZGmXt6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZGmXuKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZGmXuaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZIPWYKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWYaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWYqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWY6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWZKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWZaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWZqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWZ6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWaKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWaaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWaqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWa6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWbKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZIPWbaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWbqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWb6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWcKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWcaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWcqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWc6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWdKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWdaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWdqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZIPWd6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZIPWeKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZIPWeaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZJukIKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukIaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukIqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukI6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukJKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukJaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukJqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukJ6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukKKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukKaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukKqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukK6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukLKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZJukLaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukLqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukL6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukMKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukMaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukMqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukM6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukNKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukNaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukNqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZJukN6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZJukOKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZJukOaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZLW70KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW70aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW70qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW706etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW71KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW71aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW71qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW716etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW72KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW72aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW72qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW726etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW73KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZLW73aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW73qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW736etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW74KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW74aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW74qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW746etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW75KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW75aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW75qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZLW756etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZLW76KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZLW76aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZNJrkKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrkaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrkqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrk6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrlKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrlaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrlqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrl6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrmKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrmaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrmqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrm6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrnKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZNJrnaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJrnqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJrn6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJroKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJroaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJroqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJro6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJrpKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJrpaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJrpqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZNJrp6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZNJrqKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZNJrqaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ZgVtUKetEeSgvuE9XIvLDQ" name="Package1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVtUaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtUqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtU6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtVKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtVaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtVqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtV6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtWKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtWaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtWqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtW6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtXKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtXaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtXqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtX6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtYKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtYaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtYqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtY6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtZKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtZaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtZqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtZ6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtaKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVtaaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVtaqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ZgVta6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZgVtbKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZgVtbaetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZgVtbqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZgVtb6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVtcKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtcaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtcqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtc6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtdKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtdaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtdqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtd6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVteKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVteaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVteqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVte6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtfKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtfaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtfqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtf6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtgKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtgaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtgqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtg6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVthKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVthaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVthqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVth6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVtiKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVtiaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVtiqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVti6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtjKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtjaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtjqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtj6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtkKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtkaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtkqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtk6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtlKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtlaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtlqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtl6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtmKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtmaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtmqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtm6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtnKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtnaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtnqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtn6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtoKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtoaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVtoqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVto6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVtpKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtpaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtpqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtp6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtqKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtqaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtqqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtq6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtrKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtraetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtrqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtr6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtsKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtsaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtsqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVts6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVttKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVttaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVttqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtt6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtuKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtuaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtuqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtu6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVtvKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVtvaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVtvqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtv6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtwKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtwaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtwqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtw6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtxKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtxaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtxqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtx6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtyKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtyaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVtyqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVty6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtzKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtzaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtzqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVtz6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt0KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt0aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt0qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt06etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt1KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt1aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVt1qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVt16etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVt2KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt2aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt2qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt26etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt3KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt3aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt3qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt36etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt4KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt4aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt4qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt46etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt5KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt5aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt5qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt56etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt6KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt6aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt6qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt66etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt7KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt7aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt7qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVt76etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVt8KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVt8aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVt8qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt86etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt9KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt9aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt9qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt96etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt-KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt-aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt-qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt-6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt_KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt_aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt_qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVt_6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuAKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuAaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuAqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuA6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuBKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuBaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuBqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuB6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuCKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuCaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuCqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuC6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVuDKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuDaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuDqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuD6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuEKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuEaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuEqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuE6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuFKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuFaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuFqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuF6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuGKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuGaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuGqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuG6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuHKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuHaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuHqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuH6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuIKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuIaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuIqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuI6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuJKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuJaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVuJqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuJ6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuKKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuKaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuKqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuK6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuLKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuLaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuLqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuL6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuMKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuMaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuMqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuM6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuNKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuNaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuNqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuN6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuOKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuOaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuOqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuO6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuPKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuPaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuPqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuP6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVuQKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuQaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuQqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuQ6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuRKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuRaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuRqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuR6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuSKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuSaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuSqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuS6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuTKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuTaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuTqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuT6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuUKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuUaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuUqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuU6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuVKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuVaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuVqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuV6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuWKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuWaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVuWqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuW6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuXKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuXaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuXqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuX6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuYKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuYaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuYqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuY6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuZKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuZaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuZqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuZ6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuaKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuaaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuaqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVua6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVubKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVubaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVubqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVub6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVucKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVucaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVucqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVuc6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZgVudKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVudaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVudqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVud6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVueKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVueaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVueqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVue6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVufKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVufaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVufqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVuf6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVugKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZgVugaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVugqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVug6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuhKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuhaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuhqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuh6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuiKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuiaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVuiqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZgVui6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVujKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZgVujaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_Zo0T4KetEeSgvuE9XIvLDQ" name="CopyOf_Package1_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo0T4aetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T4qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T46etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T5KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T5aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T5qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T56etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T6KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T6aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T6qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T66etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T7KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T7aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0T7qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T76etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T8KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T8aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T8qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T86etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T9KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T9aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T9qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T96etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0T-KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo0T-aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo0T-qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_Zo0T-6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Zo0T_KetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Zo0T_aetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Zo0T_qetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Zo0T_6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo0UAKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UAaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UAqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UA6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UBKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UBaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UBqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UB6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UCKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UCaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UCqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UC6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UDKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UDaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UDqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UD6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UEKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UEaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UEqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UE6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UFKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UFaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UFqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UF6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo0UGKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo0UGaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo0UGqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UG6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UHKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UHaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UHqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UH6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UIKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UIaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UIqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UI6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UJKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UJaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UJqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UJ6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UKKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UKaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UKqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UK6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0ULKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0ULaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0ULqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UL6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UMKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo0UMaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo0UMqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo0UM6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo0UNKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UNaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UNqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UN6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UOKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UOaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UOqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UO6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UPKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UPaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo0UPqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E4KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E4aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E4qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E46etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E5KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E5aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E5qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E56etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E6KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E6aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E6qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E66etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E7KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-E7aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-E7qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo-E76etEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E8KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E8aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E8qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E86etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E9KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E9aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E9qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E96etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E-KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E-aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E-qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E-6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-E_KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E_aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E_qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-E_6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FAKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FAaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FAqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FA6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FBKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FBaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FBqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FB6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FCKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo-FCaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FCqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FC6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FDKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FDaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FDqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FD6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FEKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FEaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FEqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FE6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FFKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FFaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FFqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FF6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FGKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FGaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FGqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FG6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FHKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FHaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FHqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FH6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FIKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FIaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FIqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo-FI6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FJKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FJaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FJqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FJ6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FKKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FKaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FKqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FK6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FLKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FLaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FLqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FL6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FMKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FMaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FMqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FM6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FNKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FNaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FNqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FN6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FOKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FOaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FOqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FO6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FPKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo-FPaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FPqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FP6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FQKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FQaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FQqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FQ6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FRKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FRaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FRqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FR6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FSKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FSaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FSqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FS6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FTKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FTaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FTqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FT6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FUKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FUaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FUqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FU6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FVKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FVaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FVqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo-FV6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FWKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FWaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FWqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FW6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FXKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FXaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FXqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FX6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FYKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FYaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FYqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FY6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FZKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FZaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FZqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FZ6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FaKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FaaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FaqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Fa6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FbKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FbaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FbqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-Fb6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FcKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo-FcaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FcqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fc6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FdKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FdaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FdqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fd6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FeKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FeaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FeqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fe6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FfKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FfaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FfqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Ff6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FgKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FgaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FgqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Fg6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FhKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FhaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FhqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Fh6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FiKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FiaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FiqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo-Fi6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FjKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FjaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FjqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fj6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FkKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FkaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FkqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fk6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FlKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FlaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FlqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fl6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FmKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FmaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FmqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Fm6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FnKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FnaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FnqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Fn6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FoKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FoaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FoqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-Fo6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FpKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zo-FpaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FpqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fp6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FqKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FqaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FqqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fq6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FrKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FraetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FrqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-Fr6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FsKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FsaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zo-FsqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Fs6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FtKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FtaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FtqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Ft6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FuKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FuaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FuqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-Fu6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zo-FvKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FvaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zo-FvqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ZqmckKetEeSgvuE9XIvLDQ" name="CopyOf_Package1_2">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmckaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmckqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmck6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmclKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmclaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmclqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmcl6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcmKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcmaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcmqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmcm6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcnKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcnaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcnqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmcn6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcoKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcoaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcoqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmco6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcpKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcpaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcpqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmcp6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcqKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmcqaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmcqqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_Zqmcq6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZqmcrKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZqmcraetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZqmcrqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Zqmcr6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmcsKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcsaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcsqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmcs6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmctKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmctaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmctqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmct6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcuKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcuaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcuqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmcu6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcvKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmcvaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcvqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmcv6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcwKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcwaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcwqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmcw6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcxKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcxaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmcxqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmcx6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmcyKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmcyaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmcyqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmcy6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmczKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmczaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmczqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmcz6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc0KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc0aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc0qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc06etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc1KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc1aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc1qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc16etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc2KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc2aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc2qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc26etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc3KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc3aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc3qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc36etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc4KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc4aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zqmc4qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zqmc46etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zqmc5KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc5aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc5qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc56etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc6KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc6aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc6qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc66etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc7KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc7aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc7qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc76etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc8KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc8aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc8qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc86etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc9KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc9aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc9qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc96etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc-KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc-aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc-qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmc-6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zqmc_KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zqmc_aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Zqmc_qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmc_6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdAKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdAaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdAqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdA6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdBKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdBaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdBqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdB6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdCKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdCaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdCqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdC6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdDKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdDaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdDqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdD6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdEKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdEaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdEqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdE6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdFKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdFaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdFqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdF6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmdGKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdGaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdGqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdG6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdHKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdHaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdHqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdH6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdIKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdIaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdIqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdI6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdJKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdJaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdJqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdJ6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdKKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdKaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdKqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdK6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdLKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdLaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdLqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdL6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdMKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdMaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmdMqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdM6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdNKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdNaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdNqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdN6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdOKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdOaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdOqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdO6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdPKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdPaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdPqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdP6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdQKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdQaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdQqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdQ6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdRKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdRaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdRqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdR6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdSKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdSaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdSqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdS6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmdTKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdTaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdTqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdT6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdUKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdUaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdUqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdU6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdVKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdVaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdVqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdV6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdWKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdWaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdWqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdW6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdXKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdXaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdXqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdX6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdYKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdYaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdYqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdY6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdZKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdZaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmdZqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdZ6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdaKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdaaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdaqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmda6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdbKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdbaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdbqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdb6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdcKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdcaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdcqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdc6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmddKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmddaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmddqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdd6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdeKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdeaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdeqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmde6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdfKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdfaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdfqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zqmdf6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmdgKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdgaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdgqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdg6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdhKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdhaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdhqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdh6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdiKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdiaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdiqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdi6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdjKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdjaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdjqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdj6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdkKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdkaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdkqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdk6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdlKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdlaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdlqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdl6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdmKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdmaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmdmqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdm6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdnKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdnaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdnqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdn6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdoKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdoaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdoqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdo6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdpKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdpaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdpqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdp6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdqKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdqaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdqqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdq6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdrKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdraetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdrqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdr6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdsKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdsaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdsqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_Zqmds6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZqmdtKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdtaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdtqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdt6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmduKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmduaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmduqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdu6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdvKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdvaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdvqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_Zqmdv6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdwKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZqmdwaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdwqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdw6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdxKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdxaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdxqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdx6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdyKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdyaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZqmdyqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_Zqmdy6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdzKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZqmdzaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ZsFqUKetEeSgvuE9XIvLDQ" name="CopyOf_Package1_3">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFqUaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqUqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqU6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqVKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqVaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqVqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqV6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqWKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqWaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqWqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqW6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqXKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqXaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqXqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqX6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqYKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqYaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqYqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqY6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqZKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqZaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqZqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqZ6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqaKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFqaaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFqaqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ZsFqa6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZsFqbKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZsFqbaetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZsFqbqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ZsFqb6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFqcKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqcaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqcqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqc6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqdKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqdaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqdqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqd6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqeKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqeaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqeqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqe6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqfKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqfaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqfqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqf6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqgKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqgaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqgqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqg6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqhKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqhaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqhqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqh6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFqiKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFqiaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFqiqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqi6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqjKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqjaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqjqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqj6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqkKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqkaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqkqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqk6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqlKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqlaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqlqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFql6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqmKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqmaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqmqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqm6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqnKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqnaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqnqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqn6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqoKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqoaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFqoqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFqo6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFqpKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqpaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqpqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqp6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqqKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqqaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqqqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqq6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqrKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqraetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqrqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqr6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqsKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqsaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqsqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqs6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqtKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqtaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqtqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqt6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFquKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFquaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFquqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqu6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFqvKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFqvaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFqvqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqv6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqwKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqwaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqwqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqw6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqxKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqxaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqxqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqx6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqyKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqyaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqyqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFqy6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqzKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqzaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqzqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFqz6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq0KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq0aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq0qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq06etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq1KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq1aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFq1qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFq16etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFq2KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq2aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq2qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq26etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq3KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq3aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq3qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq36etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq4KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq4aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq4qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq46etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq5KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq5aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq5qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq56etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq6KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq6aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq6qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq66etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq7KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq7aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq7qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFq76etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFq8KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFq8aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFq8qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq86etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq9KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq9aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq9qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq96etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq-KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq-aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq-qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq-6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq_KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq_aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq_qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFq_6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrAKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrAaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrAqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrA6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrBKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrBaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrBqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrB6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrCKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrCaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrCqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrC6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFrDKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrDaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrDqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrD6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrEKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrEaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrEqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrE6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrFKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrFaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrFqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrF6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrGKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrGaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrGqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrG6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrHKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrHaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrHqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrH6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrIKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrIaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrIqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrI6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrJKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrJaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFrJqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrJ6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrKKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrKaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrKqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrK6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrLKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrLaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrLqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrL6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrMKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrMaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrMqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrM6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrNKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrNaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrNqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrN6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrOKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrOaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrOqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrO6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrPKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrPaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrPqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrP6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFrQKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrQaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrQqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrQ6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrRKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrRaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrRqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrR6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrSKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrSaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrSqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrS6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrTKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrTaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrTqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrT6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrUKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrUaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrUqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrU6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrVKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrVaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrVqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrV6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrWKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrWaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFrWqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrW6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrXKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrXaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrXqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrX6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrYKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrYaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrYqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrY6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrZKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrZaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrZqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrZ6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFraKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFraaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFraqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFra6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrbKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrbaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrbqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrb6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrcKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrcaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrcqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrc6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ZsFrdKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrdaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrdqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrd6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFreKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFreaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFreqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFre6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrfKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrfaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrfqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrf6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrgKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ZsFrgaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrgqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrg6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrhKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrhaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrhqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFrh6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFriKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFriaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFriqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ZsFri6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrjKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ZsFrjaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbL4KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_12">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL4aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL4qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL46etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL5KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL5aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL5qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL56etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL6KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL6aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL6qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL66etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL7KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbL7aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL7qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL76etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL8KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL8aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL8qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL86etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL9KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL9aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL9qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbL96etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbL-KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbL-aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_aYbL-qetEeSgvuE9XIvLDQ" name="CopyOf_Enumeration1_1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYbL-6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYbL_KetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYbL_aetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYbL_qetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbL_6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMAKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMAaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMAqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMA6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMBKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMBaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMBqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMB6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMCKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMCaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMCqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMC6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMDKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMDaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMDqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMD6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMEKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMEaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMEqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbME6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMFKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMFaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMFqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMF6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMGKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbMGaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_2_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMGqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMG6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMHKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMHaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMHqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMH6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMIKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMIaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMIqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMI6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMJKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMJaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMJqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMJ6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMKKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMKaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMKqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMK6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMLKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMLaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMLqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbML6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMMKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMMaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMMqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbMM6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_3_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMNKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMNaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMNqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMN6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMOKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMOaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMOqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMO6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMPKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMPaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMPqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMP6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMQKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMQaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMQqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMQ6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMRKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMRaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMRqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMR6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMSKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMSaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMSqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMS6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMTKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbMTaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_4_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMTqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMT6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMUKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMUaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMUqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMU6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMVKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMVaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMVqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMV6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMWKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMWaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMWqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMW6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMXKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMXaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMXqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMX6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMYKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMYaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMYqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMY6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMZKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMZaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMZqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbMZ6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_5_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMaKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMaaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMaqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMa6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMbKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMbaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMbqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMb6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMcKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMcaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMcqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMc6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMdKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMdaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMdqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMd6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMeKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMeaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMeqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMe6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMfKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMfaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMfqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMf6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMgKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbMgaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_6_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMgqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMg6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMhKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMhaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMhqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMh6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMiKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMiaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMiqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMi6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMjKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMjaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMjqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMj6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMkKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMkaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMkqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMk6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMlKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMlaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMlqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMl6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMmKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMmaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMmqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbMm6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_7_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMnKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMnaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMnqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMn6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMoKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMoaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMoqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMo6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMpKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMpaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMpqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMp6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMqKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMqaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMqqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMq6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMrKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMraetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMrqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMr6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMsKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMsaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMsqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMs6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMtKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbMtaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_8_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMtqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMt6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMuKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMuaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMuqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMu6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMvKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMvaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMvqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMv6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMwKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMwaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbMwqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMw6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMxKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMxaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMxqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMx6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMyKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMyaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMyqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMy6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbMzKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMzaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbMzqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbMz6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_9_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM0KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM0aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM0qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM06etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM1KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM1aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM1qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM16etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM2KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM2aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM2qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM26etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM3KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM3aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM3qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM36etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM4KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM4aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM4qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM46etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM5KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM5aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM5qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbM56etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbM6KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbM6aetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_10_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM6qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM66etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM7KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM7aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM7qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM76etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM8KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM8aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM8qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM86etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM9KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM9aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbM9qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM96etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM-KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM-aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM-qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM-6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM_KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM_aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM_qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbM_6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNAKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNAaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNAqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbNA6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_11_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNBKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNBaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNBqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNB6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNCKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNCaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNCqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNC6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNDKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNDaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNDqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbND6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNEKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNEaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNEqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNE6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNFKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNFaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNFqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNF6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNGKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNGaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNGqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNG6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNHKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_aYbNHaetEeSgvuE9XIvLDQ" name="CopyOf_Package1_4">
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbNHqetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNH6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNIKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNIaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNIqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNI6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNJKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNJaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNJqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNJ6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNKKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNKaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNKqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNK6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNLKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNLaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNLqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNL6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNMKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNMaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNMqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNM6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNNKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNNaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNNqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNN6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_aYbNOKetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYbNOaetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYbNOqetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYbNO6etEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYbNPKetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbNPaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNPqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNP6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNQKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNQaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNQqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNQ6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNRKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNRaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNRqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNR6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNSKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNSaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNSqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNS6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNTKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNTaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNTqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNT6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNUKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNUaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNUqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNU6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNVKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNVaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNVqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbNV6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNWKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNWaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNWqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNW6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNXKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNXaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNXqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNX6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNYKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNYaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNYqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNY6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNZKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNZaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNZqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNZ6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNaKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNaaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNaqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNa6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNbKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNbaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNbqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNb6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNcKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbNcaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNcqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNc6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNdKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNdaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNdqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNd6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNeKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNeaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNeqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNe6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNfKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNfaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNfqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNf6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNgKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNgaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNgqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNg6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNhKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNhaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNhqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNh6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNiKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNiaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNiqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbNi6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNjKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNjaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNjqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNj6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNkKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNkaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNkqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNk6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNlKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNlaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNlqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNl6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNmKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNmaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNmqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNm6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNnKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNnaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNnqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNn6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNoKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNoaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNoqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNo6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNpKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbNpaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNpqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNp6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNqKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNqaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNqqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNq6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNrKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNraetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNrqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNr6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNsKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNsaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNsqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNs6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNtKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNtaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNtqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNt6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNuKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNuaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNuqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNu6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNvKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNvaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbNvqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbNv6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNwKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNwaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNwqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNw6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNxKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNxaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNxqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNx6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNyKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNyaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNyqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNy6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbNzKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNzaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNzqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbNz6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN0KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN0aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN0qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN06etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN1KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN1aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN1qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbN16etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbN2KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbN2aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN2qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN26etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN3KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN3aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN3qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN36etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN4KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN4aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN4qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN46etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN5KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN5aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN5qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN56etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN6KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN6aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN6qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN66etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN7KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN7aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN7qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN76etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbN8KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbN8aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbN8qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbN86etEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN9KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN9aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN9qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN96etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN-KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN-aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN-qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN-6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN_KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN_aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN_qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbN_6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOAKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOAaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOAqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOA6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOBKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOBaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOBqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOB6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOCKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOCaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOCqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbOC6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbODKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbODaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbODqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOD6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOEKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOEaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOEqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOE6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOFKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOFaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOFqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOF6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOGKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOGaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOGqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOG6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOHKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOHaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOHqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOH6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOIKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOIaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOIqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOI6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOJKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbOJaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbOJqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbOJ6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOKKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOKaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOKqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOK6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOLKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOLaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOLqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOL6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOMKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOMaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOMqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOM6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbONKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbONaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbONqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbON6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOOKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOOaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOOqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOO6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOPKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOPaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOPqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbOP6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbOQKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYbOQaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOQqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOQ6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbORKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbORaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbORqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOR6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOSKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOSaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOSqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOS6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOTKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOTaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYbOTqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOT6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOUKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOUaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOUqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOU6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOVKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOVaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOVqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOV6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYbOWKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbOWaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYbOWqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_aYk84KetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_1_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk84aetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk84qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk846etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk85KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk85aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk85qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk856etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk86KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk86aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk86qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk866etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk87KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk87aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk87qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk876etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk88KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk88aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk88qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk886etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk89KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk89aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk89qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk896etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk8-KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk8-aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk8-qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_aYk8-6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk8_KetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk8_aetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk8_qetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk8_6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk9AKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9AaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9AqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9A6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9BKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9BaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9BqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9B6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9CKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9CaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9CqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9C6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9DKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9DaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9DqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9D6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9EKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9EaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9EqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9E6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9FKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9FaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9FqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9F6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9GKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9GaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk9GqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9G6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9HKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9HaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9HqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9H6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9IKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9IaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9IqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9I6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9JKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9JaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9JqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9J6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9KKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9KaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9KqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9K6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9LKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9LaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9LqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9L6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9MKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9MaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9MqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9M6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk9NKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9NaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9NqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9N6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9OKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9OaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9OqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9O6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9PKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9PaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9PqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9P6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9QKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9QaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9QqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9Q6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9RKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9RaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9RqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9R6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9SKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9SaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9SqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9S6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9TKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9TaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk9TqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9T6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9UKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9UaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9UqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9U6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9VKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9VaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9VqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9V6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9WKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9WaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9WqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9W6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9XKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9XaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9XqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9X6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9YKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9YaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9YqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9Y6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9ZKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9ZaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9ZqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9Z6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk9aKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9aaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9aqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9a6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9bKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9baetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9bqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9b6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9cKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9caetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9cqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9c6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9dKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9daetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9dqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9d6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9eKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9eaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9eqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9e6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9fKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9faetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9fqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9f6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9gKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9gaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk9gqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9g6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9hKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9haetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9hqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9h6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9iKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9iaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9iqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9i6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9jKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9jaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9jqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9j6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9kKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9kaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9kqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9k6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9lKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9laetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9lqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9l6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9mKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9maetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9mqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9m6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk9nKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9naetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9nqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9n6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9oKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9oaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9oqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9o6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9pKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9paetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9pqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9p6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9qKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9qaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9qqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9q6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9rKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9raetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9rqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9r6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9sKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9saetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9sqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9s6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9tKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9taetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk9tqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9t6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9uKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9uaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9uqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9u6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9vKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9vaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9vqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9v6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9wKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9waetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9wqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk9w6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9xKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9xaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9xqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9x6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9yKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9yaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9yqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9y6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9zKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9zaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9zqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk9z6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk90KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk90aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk90qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk906etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk91KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk91aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk91qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk916etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk92KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk92aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk92qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk926etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk93KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk93aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk93qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk936etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk94KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk94aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk94qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk946etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk95KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk95aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk95qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk956etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk96KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk96aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk96qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk966etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk97KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk97aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk97qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk976etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk98KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk98aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk98qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk986etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk99KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk99aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk99qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk996etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9-KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9-aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9-qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9-6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9_KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9_aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9_qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk9_6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-AKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-AaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-AqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-A6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-BKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-BaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-BqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-B6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-CKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-CaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-CqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-C6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-DKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-DaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-DqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-D6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-EKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-EaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-EqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-E6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-FKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-FaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-FqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-F6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-GKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-GaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-GqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-G6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-HKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-HaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_aYk-HqetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_2_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-H6etEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-IKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-IaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-IqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-I6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-JKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-JaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-JqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-J6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-KKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-KaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-KqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-K6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-LKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-LaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-LqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-L6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-MKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-MaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-MqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-M6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-NKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-NaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-NqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-N6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-OKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_aYk-OaetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk-OqetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk-O6etEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk-PKetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk-PaetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-PqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-P6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-QKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-QaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-QqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-Q6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-RKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-RaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-RqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-R6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-SKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-SaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-SqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-S6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-TKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-TaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-TqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-T6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-UKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-UaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-UqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-U6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-VKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-VaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-VqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-V6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-WKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-WaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-WqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-W6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-XKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-XaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-XqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-X6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-YKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-YaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-YqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-Y6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-ZKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-ZaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-ZqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-Z6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-aKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-aaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-aqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-a6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-bKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-baetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-bqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-b6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-cKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-caetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-cqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-c6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-dKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-daetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-dqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-d6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-eKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-eaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-eqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-e6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-fKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-faetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-fqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-f6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-gKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-gaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-gqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-g6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-hKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-haetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-hqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-h6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-iKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-iaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-iqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-i6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-jKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-jaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-jqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-j6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-kKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-kaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-kqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-k6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-lKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-laetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-lqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-l6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-mKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-maetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-mqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-m6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-nKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-naetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-nqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-n6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-oKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-oaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-oqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-o6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-pKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-paetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-pqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-p6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-qKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-qaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-qqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-q6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-rKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-raetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-rqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-r6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-sKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-saetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-sqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-s6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-tKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-taetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-tqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-t6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-uKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-uaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-uqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-u6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-vKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-vaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-vqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-v6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-wKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-waetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-wqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-w6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-xKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-xaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-xqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-x6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-yKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-yaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-yqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-y6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-zKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-zaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-zqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-z6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-0KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-0aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-0qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-06etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-1KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-1aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-1qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-16etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-2KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-2aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-2qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-26etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-3KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-3aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-3qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-36etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-4KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-4aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-4qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-46etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-5KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-5aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-5qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-56etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-6KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-6aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-6qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-66etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-7KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-7aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-7qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-76etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-8KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk-8aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-8qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk-86etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk-9KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-9aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-9qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-96etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk--KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk--aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk--qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk--6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-_KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-_aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-_qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk-_6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_AKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_AaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_AqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_A6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_BKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_BaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_BqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_B6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_CKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_CaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_CqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_C6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_DKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_DaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_DqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_D6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_EKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_EaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_EqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_E6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_FKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_FaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_FqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_F6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_GKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_GaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_GqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_G6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_HKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_HaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_HqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_H6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_IKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_IaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_IqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_I6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_JKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_JaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_JqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_J6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_KKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_KaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_KqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_K6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_LKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_LaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_LqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_L6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_MKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_MaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_MqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_M6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_NKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_NaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_NqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_N6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_OKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_OaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_OqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_O6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_PKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_PaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_PqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_P6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_QKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_QaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_QqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_Q6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_RKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_RaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_RqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_R6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_SKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_SaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_SqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_S6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_TKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_TaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_TqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_T6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_UKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_UaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_UqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_U6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_VKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_VaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_VqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_V6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_WKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_WaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_WqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_W6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_aYk_XKetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_3_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_XaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_XqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_X6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_YKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_YaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_YqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_Y6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_ZKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_ZaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_ZqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_Z6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_aKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_aaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_aqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_a6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_bKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_baetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_bqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_b6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_cKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_caetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_cqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_c6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_dKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_daetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_dqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_aYk_d6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk_eKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk_eaetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk_eqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_aYk_e6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_fKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_faetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_fqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_f6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_gKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_gaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_gqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_g6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_hKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_haetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_hqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_h6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_iKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_iaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_iqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_i6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_jKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_jaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_jqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_j6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_kKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_kaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_kqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_k6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_lKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_laetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_lqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_l6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_mKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_maetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_mqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_m6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_nKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_naetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_nqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_n6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_oKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_oaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_oqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_o6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_pKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_paetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_pqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_p6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_qKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_qaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_qqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_q6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_rKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_raetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_rqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_r6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_sKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_saetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_sqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_s6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_tKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_taetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_tqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_t6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_uKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_uaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_uqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_u6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_vKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_vaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_vqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_v6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_wKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_waetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_wqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_w6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_xKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_xaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_xqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_x6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_yKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_yaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_yqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_y6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_zKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_zaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_zqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_z6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_0KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_0aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_0qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_06etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_1KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_1aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_1qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_16etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_2KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_2aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_2qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_26etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_3KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_3aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_3qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_36etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_4KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_4aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_4qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk_46etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk_5KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_5aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_5qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_56etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_6KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_6aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_6qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_66etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_7KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_7aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_7qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_76etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_8KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk_8aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_8qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_86etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_9KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_9aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_9qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_96etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_-KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_-aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_-qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYk_-6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk__KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYk__aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYk__qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYk__6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAAKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAAaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAAqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAA6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlABKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlABaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlABqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAB6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlACKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlACaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlACqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAC6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlADKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlADaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlADqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAD6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAEKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAEaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAEqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAE6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAFKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAFaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAFqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAF6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYlAGKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAGaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAGqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAG6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAHKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAHaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAHqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAH6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAIKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAIaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAIqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAI6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAJKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAJaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAJqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAJ6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAKKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAKaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAKqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAK6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlALKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlALaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlALqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAL6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAMKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAMaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYlAMqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAM6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlANKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlANaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlANqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAN6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAOKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAOaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAOqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAO6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAPKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAPaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAPqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAP6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAQKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAQaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAQqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAQ6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlARKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlARaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlARqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAR6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlASKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlASaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlASqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAS6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYlATKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlATaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlATqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAT6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAUKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAUaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAUqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAU6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAVKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAVaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAVqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAV6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAWKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAWaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAWqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAW6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAXKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAXaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAXqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAX6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAYKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAYaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAYqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAY6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAZKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAZaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYlAZqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAZ6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAaKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAaaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAaqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAa6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAbKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAbaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAbqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAb6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAcKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAcaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAcqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAc6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAdKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAdaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAdqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAd6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAeKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAeaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAeqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAe6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAfKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAfaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAfqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAf6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aYlAgKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAgaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAgqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAg6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAhKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAhaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAhqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAh6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAiKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAiaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAiqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAi6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAjKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_aYlAjaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAjqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAj6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAkKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAkaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAkqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAk6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAlKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAlaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAlqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_aYlAl6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAmKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_aYlAmaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyNAKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_13">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNAaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNAqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNA6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNBKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNBaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNBqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNB6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNCKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNCaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNCqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNC6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNDKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNDaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNDqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyND6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNEKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNEaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNEqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNE6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNFKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNFaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNFqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNF6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNGKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNGaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_adyNGqetEeSgvuE9XIvLDQ" name="CopyOf_Enumeration1_2">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_adyNG6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_adyNHKetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_adyNHaetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_adyNHqetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyNH6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNIKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNIaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNIqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNI6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNJKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNJaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNJqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNJ6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNKKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNKaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNKqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNK6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNLKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNLaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNLqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNL6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNMKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNMaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNMqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNM6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNNKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNNaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNNqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNN6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNOKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyNOaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_2_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNOqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNO6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNPKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNPaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNPqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNP6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNQKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNQaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNQqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNQ6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNRKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNRaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNRqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNR6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNSKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNSaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNSqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNS6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNTKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNTaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNTqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNT6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNUKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNUaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNUqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyNU6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_3_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNVKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNVaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNVqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNV6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNWKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNWaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNWqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNW6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNXKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNXaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNXqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNX6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNYKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNYaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNYqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNY6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNZKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNZaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNZqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNZ6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNaKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNaaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNaqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNa6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNbKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyNbaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_4_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNbqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNb6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNcKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNcaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNcqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNc6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNdKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNdaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNdqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNd6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNeKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNeaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNeqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNe6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNfKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNfaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNfqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNf6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNgKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNgaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNgqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNg6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNhKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNhaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNhqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyNh6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_5_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNiKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNiaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNiqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNi6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNjKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNjaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNjqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNj6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNkKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNkaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNkqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNk6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNlKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNlaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNlqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNl6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNmKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNmaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNmqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNm6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNnKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNnaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNnqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNn6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNoKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyNoaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_6_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNoqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNo6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNpKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNpaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNpqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNp6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNqKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNqaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNqqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNq6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNrKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNraetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNrqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNr6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNsKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNsaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNsqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNs6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNtKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNtaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNtqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNt6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNuKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNuaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyNuqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyNu6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_7_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNvKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNvaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNvqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNv6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNwKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNwaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNwqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNw6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNxKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNxaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNxqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNx6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyNyKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNyaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNyqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNy6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNzKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNzaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNzqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyNz6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN0KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN0aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN0qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyN06etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyN1KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyN1aetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_8_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN1qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN16etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN2KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN2aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN2qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN26etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN3KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN3aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN3qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN36etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN4KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN4aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN4qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN46etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN5KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN5aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN5qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN56etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN6KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN6aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN6qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN66etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN7KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyN7aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyN7qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyN76etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_9_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN8KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN8aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN8qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN86etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN9KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN9aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN9qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN96etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN-KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN-aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN-qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN-6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyN_KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN_aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN_qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyN_6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOAKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOAaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOAqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOA6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOBKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOBaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOBqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyOB6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyOCKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyOCaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_10_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOCqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOC6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyODKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyODaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyODqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOD6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOEKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOEaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOEqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOE6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOFKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOFaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOFqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOF6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOGKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOGaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOGqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOG6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOHKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOHaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOHqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOH6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOIKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyOIaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyOIqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyOI6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_11_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOJKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOJaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOJqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOJ6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOKKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOKaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOKqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOK6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOLKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOLaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOLqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOL6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOMKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOMaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOMqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOM6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyONKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyONaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyONqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyON6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOOKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOOaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOOqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyOO6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_adyOPKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_adyOPaetEeSgvuE9XIvLDQ" name="CopyOf_Package1_5">
+ <packagedElement xmi:type="uml:Class" xmi:id="_adyOPqetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOP6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOQKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOQaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOQqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOQ6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyORKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyORaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyORqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOR6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOSKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOSaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOSqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_adyOS6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOTKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_adyOTaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7W8KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7W8aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7W8qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7W86etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7W9KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7W9aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7W9qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7W96etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7W-KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7W-aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ad7W-qetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7W-6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7W_KetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7W_aetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7W_qetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7W_6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XAKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XAaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XAqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XA6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XBKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XBaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XBqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XB6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XCKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XCaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XCqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XC6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XDKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XDaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XDqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XD6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XEKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XEaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XEqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XE6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XFKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XFaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XFqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XF6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XGKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7XGaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XGqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XG6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XHKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XHaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XHqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XH6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XIKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XIaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XIqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XI6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XJKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XJaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XJqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XJ6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XKKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XKaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XKqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XK6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XLKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XLaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XLqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XL6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XMKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XMaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XMqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7XM6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XNKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XNaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XNqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XN6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XOKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XOaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XOqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XO6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XPKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XPaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XPqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XP6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XQKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XQaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XQqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XQ6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XRKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XRaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XRqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XR6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XSKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XSaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XSqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XS6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XTKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7XTaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XTqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XT6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XUKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XUaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XUqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XU6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XVKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XVaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XVqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XV6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XWKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XWaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XWqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XW6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XXKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XXaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XXqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XX6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XYKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XYaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XYqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XY6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XZKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XZaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XZqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7XZ6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XaKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XaaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XaqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xa6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XbKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XbaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XbqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xb6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XcKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XcaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XcqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xc6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XdKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XdaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XdqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xd6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XeKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XeaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XeqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xe6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XfKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XfaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XfqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Xf6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XgKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7XgaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XgqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xg6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XhKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XhaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XhqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xh6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XiKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XiaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XiqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xi6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XjKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XjaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XjqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xj6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XkKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XkaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XkqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xk6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XlKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XlaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XlqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xl6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XmKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XmaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XmqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Xm6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XnKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XnaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XnqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xn6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XoKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XoaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XoqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xo6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XpKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XpaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XpqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xp6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XqKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XqaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XqqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xq6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XrKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XraetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XrqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xr6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XsKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XsaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XsqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Xs6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XtKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7XtaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XtqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xt6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XuKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XuaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XuqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xu6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XvKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XvaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XvqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Xv6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XwKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XwaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7XwqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xw6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XxKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XxaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XxqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xx6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XyKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XyaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XyqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Xy6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7XzKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XzaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7XzqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Xz6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X0KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X0aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X0qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X06etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X1KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X1aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X1qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X16etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X2KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X2aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X2qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X26etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X3KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X3aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X3qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X36etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X4KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X4aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X4qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X46etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X5KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X5aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X5qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7X56etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7X6KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7X6aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X6qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X66etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X7KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X7aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X7qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X76etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X8KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X8aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X8qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X86etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X9KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X9aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7X9qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X96etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X-KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X-aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X-qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X-6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X_KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X_aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X_qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7X_6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YAKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YAaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YAqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7YA6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YBKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YBaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YBqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YB6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YCKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YCaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YCqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YC6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YDKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YDaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YDqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YD6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YEKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YEaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YEqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YE6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YFKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YFaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YFqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YF6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YGKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YGaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YGqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YG6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YHKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ad7YHaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_1_2">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7YHqetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YH6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YIKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YIaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YIqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YI6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YJKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YJaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YJqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YJ6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YKKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YKaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YKqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YK6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YLKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YLaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YLqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YL6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YMKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YMaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YMqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YM6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YNKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YNaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YNqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YN6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ad7YOKetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7YOaetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7YOqetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7YO6etEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7YPKetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7YPaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YPqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YP6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YQKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YQaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YQqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YQ6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YRKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YRaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YRqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YR6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YSKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YSaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YSqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YS6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YTKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YTaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YTqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YT6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YUKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YUaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YUqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YU6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YVKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YVaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YVqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7YV6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YWKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YWaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YWqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YW6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YXKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YXaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YXqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YX6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YYKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YYaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YYqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YY6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YZKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YZaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YZqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YZ6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YaKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YaaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YaqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Ya6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YbKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YbaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YbqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Yb6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YcKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7YcaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YcqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yc6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YdKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YdaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YdqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yd6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YeKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YeaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YeqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Ye6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YfKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YfaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YfqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Yf6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YgKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YgaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YgqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Yg6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YhKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YhaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YhqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Yh6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YiKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YiaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YiqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Yi6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YjKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YjaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YjqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yj6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YkKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YkaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YkqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yk6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YlKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YlaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YlqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yl6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YmKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YmaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YmqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Ym6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YnKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YnaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YnqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Yn6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YoKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YoaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YoqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Yo6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YpKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7YpaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YpqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yp6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YqKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YqaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YqqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yq6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YrKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YraetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YrqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yr6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YsKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YsaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YsqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Ys6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YtKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YtaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YtqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Yt6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YuKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YuaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YuqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Yu6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YvKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YvaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7YvqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Yv6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YwKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YwaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YwqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yw6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YxKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YxaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YxqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yx6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YyKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YyaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YyqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Yy6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7YzKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YzaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7YzqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Yz6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y0KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y0aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y0qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y06etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y1KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y1aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y1qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Y16etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Y2KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Y2aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y2qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y26etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y3KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y3aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y3qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y36etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y4KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y4aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y4qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y46etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y5KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y5aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y5qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y56etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y6KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y6aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y6qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y66etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y7KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y7aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y7qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y76etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Y8KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Y8aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Y8qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Y86etEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y9KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y9aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y9qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y96etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y-KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y-aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y-qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y-6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y_KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y_aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y_qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Y_6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZAKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZAaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZAqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZA6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZBKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZBaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZBqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZB6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZCKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZCaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZCqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZC6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZDKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7ZDaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZDqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZD6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZEKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZEaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZEqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZE6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZFKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZFaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZFqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZF6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZGKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZGaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZGqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZG6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZHKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZHaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZHqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZH6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZIKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZIaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZIqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZI6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZJKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZJaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZJqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7ZJ6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZKKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZKaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZKqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZK6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZLKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZLaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZLqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZL6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZMKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZMaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZMqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZM6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZNKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZNaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZNqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZN6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZOKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZOaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZOqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZO6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZPKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZPaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZPqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZP6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZQKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7ZQaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZQqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZQ6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZRKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZRaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZRqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZR6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZSKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZSaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZSqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZS6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZTKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZTaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZTqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZT6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZUKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZUaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZUqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZU6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZVKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZVaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZVqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZV6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZWKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZWaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZWqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ad7ZW6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_2_2">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7ZXKetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZXaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZXqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZX6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZYKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZYaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZYqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZY6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZZKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZZaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZZqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZZ6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZaKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZaaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZaqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Za6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZbKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZbaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZbqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zb6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZcKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZcaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZcqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zc6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZdKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZdaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ad7ZdqetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7Zd6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7ZeKetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7ZeaetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7ZeqetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Ze6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZfKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZfaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZfqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zf6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZgKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZgaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZgqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zg6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZhKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZhaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZhqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zh6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZiKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZiaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZiqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zi6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZjKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZjaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZjqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zj6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZkKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZkaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZkqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Zk6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZlKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7ZlaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZlqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zl6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZmKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZmaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZmqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zm6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZnKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZnaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZnqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zn6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZoKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZoaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZoqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zo6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZpKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZpaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZpqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zp6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZqKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZqaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZqqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zq6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZrKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZraetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZrqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Zr6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZsKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZsaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZsqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zs6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZtKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZtaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZtqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zt6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZuKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZuaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZuqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zu6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZvKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZvaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZvqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zv6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZwKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZwaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZwqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Zw6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZxKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZxaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ZxqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Zx6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7ZyKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7ZyaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZyqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zy6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZzKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZzaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ZzqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Zz6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z0KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z0aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z0qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z06etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z1KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z1aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z1qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z16etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z2KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z2aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z2qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z26etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z3KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z3aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z3qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z36etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z4KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Z4aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Z4qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Z46etEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z5KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z5aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z5qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z56etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z6KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z6aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z6qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z66etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z7KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z7aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z7qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z76etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z8KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z8aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z8qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z86etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z9KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z9aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z9qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z96etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z-KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z-aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7Z-qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Z-6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7Z_KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7Z_aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z_qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7Z_6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aAKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aAaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aAqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aA6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aBKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aBaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aBqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aB6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aCKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aCaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aCqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aC6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aDKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aDaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aDqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aD6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aEKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aEaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aEqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aE6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aFKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7aFaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7aFqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7aF6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aGKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aGaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aGqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aG6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aHKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aHaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aHqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aH6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aIKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aIaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aIqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aI6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aJKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aJaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aJqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aJ6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aKKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aKaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aKqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aK6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aLKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aLaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aLqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7aL6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7aMKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7aMaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aMqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aM6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aNKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aNaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aNqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aN6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aOKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aOaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aOqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aO6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aPKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aPaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aPqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aP6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aQKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aQaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aQqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aQ6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aRKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aRaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aRqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aR6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aSKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7aSaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7aSqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7aS6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aTKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aTaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aTqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aT6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aUKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aUaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aUqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aU6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aVKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aVaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aVqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aV6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aWKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aWaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aWqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aW6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aXKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aXaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aXqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aX6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aYKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aYaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aYqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7aY6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7aZKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7aZaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aZqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aZ6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aaKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aaaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aaqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aa6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7abKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7abaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7abqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ab6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7acKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7acaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7acqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ac6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7adKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7adaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7adqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ad6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aeKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aeaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aeqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ae6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7afKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7afaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7afqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7af6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7agKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7agaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7agqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ag6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ahKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ahaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ahqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ah6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aiKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aiaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aiqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ai6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ajKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ajaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ajqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aj6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7akKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7akaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7akqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ak6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7alKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7alaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7alqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7al6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7amKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ad7amaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_3_2">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7amqetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7am6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7anKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7anaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7anqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7an6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aoKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aoaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aoqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ao6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7apKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7apaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7apqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7ap6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aqKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aqaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aqqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7aq6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7arKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7araetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7arqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ar6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7asKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7asaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7asqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7as6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ad7atKetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7ataetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7atqetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7at6etEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ad7auKetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7auaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7auqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7au6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7avKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7avaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7avqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7av6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7awKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7awaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7awqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7aw6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7axKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7axaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7axqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ax6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ayKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ayaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ayqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ay6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7azKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7azaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7azqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7az6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a0KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7a0aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7a0qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7a06etEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a1KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a1aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a1qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a16etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a2KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a2aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a2qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a26etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a3KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a3aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a3qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a36etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a4KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a4aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a4qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a46etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a5KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a5aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a5qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a56etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a6KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a6aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a6qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7a66etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7a7KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7a7aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a7qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a76etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a8KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a8aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a8qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a86etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a9KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a9aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a9qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a96etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a-KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a-aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7a-qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a-6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a_KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a_aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a_qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7a_6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bAKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bAaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bAqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bA6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bBKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bBaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bBqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7bB6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bCKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bCaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bCqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bC6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bDKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bDaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bDqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bD6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bEKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bEaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bEqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bE6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bFKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bFaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bFqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bF6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bGKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bGaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bGqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bG6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bHKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bHaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bHqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bH6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bIKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7bIaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bIqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bI6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bJKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bJaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bJqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bJ6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bKKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bKaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bKqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bK6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bLKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bLaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bLqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bL6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bMKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bMaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bMqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bM6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bNKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bNaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bNqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bN6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bOKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bOaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bOqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7bO6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bPKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bPaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bPqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bP6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bQKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bQaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bQqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bQ6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bRKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bRaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bRqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bR6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bSKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bSaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bSqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bS6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bTKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bTaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bTqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bT6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bUKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bUaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bUqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bU6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bVKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7bVaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bVqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bV6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bWKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bWaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bWqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bW6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bXKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bXaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bXqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bX6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bYKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bYaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bYqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bY6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bZKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bZaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bZqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bZ6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7baKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7baaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7baqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7ba6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bbKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bbaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bbqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7bb6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bcKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bcaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bcqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bc6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bdKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bdaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bdqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bd6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7beKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7beaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7beqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7be6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bfKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bfaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bfqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bf6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bgKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bgaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bgqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bg6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bhKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bhaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bhqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bh6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7biKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7biaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7biqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bi6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bjKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bjaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bjqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bj6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bkKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bkaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bkqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bk6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7blKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7blaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7blqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bl6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bmKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bmaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bmqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bm6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bnKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bnaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bnqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bn6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7boKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7boaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7boqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7bo6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bpKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bpaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bpqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bp6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bqKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bqaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bqqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bq6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7brKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7braetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7brqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7br6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bsKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bsaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bsqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bs6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7btKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7btaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7btqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bt6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7buKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7buaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7buqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bu6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7bvKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ad7bvaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bvqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bv6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bwKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bwaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bwqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bw6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bxKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bxaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bxqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7bx6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7byKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7byaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ad7byqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7by6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bzKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bzaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bzqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7bz6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7b0KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7b0aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7b0qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7b06etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ad7b1KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7b1aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ad7b1qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajInEKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_14">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInEaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInEqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInE6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInFKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInFaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInFqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInF6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInGKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInGaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInGqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInG6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInHKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInHaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInHqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInH6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInIKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInIaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInIqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInI6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInJKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInJaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInJqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInJ6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInKKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInKaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ajInKqetEeSgvuE9XIvLDQ" name="CopyOf_Enumeration1_3">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajInK6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajInLKetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajInLaetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajInLqetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajInL6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInMKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInMaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInMqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInM6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInNKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInNaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInNqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInN6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInOKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInOaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInOqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInO6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInPKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInPaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInPqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInP6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInQKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInQaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInQqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInQ6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInRKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInRaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInRqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInR6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInSKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajInSaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_2_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInSqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInS6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInTKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInTaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInTqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInT6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInUKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInUaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInUqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInU6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInVKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInVaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInVqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInV6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInWKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInWaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInWqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInW6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInXKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInXaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInXqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInX6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInYKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInYaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInYqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajInY6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_3_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInZKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInZaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInZqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInZ6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInaKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInaaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInaqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIna6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInbKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInbaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInbqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInb6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIncKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIncaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIncqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInc6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIndKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIndaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIndqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInd6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIneKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIneaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIneqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIne6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInfKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajInfaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_4_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInfqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInf6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIngKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIngaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIngqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIng6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInhKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInhaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInhqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInh6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIniKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIniaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIniqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIni6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInjKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInjaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInjqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInj6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInkKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInkaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInkqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInk6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInlKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInlaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInlqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajInl6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_5_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInmKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInmaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInmqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInm6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInnKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInnaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInnqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInn6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInoKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInoaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInoqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIno6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInpKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInpaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInpqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInp6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInqKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInqaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInqqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInq6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInrKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInraetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInrqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInr6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInsKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajInsaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_6_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInsqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIns6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIntKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIntaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIntqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInt6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInuKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInuaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInuqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInu6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInvKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInvaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInvqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInv6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInwKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInwaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInwqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInw6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInxKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInxaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInxqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInx6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajInyKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInyaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajInyqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajIny6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_7_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInzKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInzaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInzqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajInz6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn0KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn0aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn0qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn06etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn1KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn1aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn1qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn16etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn2KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn2aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn2qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn26etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn3KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn3aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn3qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn36etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn4KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn4aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn4qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIn46etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIn5KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajIn5aetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_8_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn5qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn56etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn6KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn6aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn6qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn66etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn7KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn7aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn7qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn76etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn8KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn8aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIn8qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn86etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn9KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn9aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn9qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn96etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn-KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn-aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn-qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn-6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIn_KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIn_aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIn_qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajIn_6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_9_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoAKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoAaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoAqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoA6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoBKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoBaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoBqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoB6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoCKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoCaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoCqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoC6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoDKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoDaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoDqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoD6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoEKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoEaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoEqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoE6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoFKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoFaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoFqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIoF6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIoGKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajIoGaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_10_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoGqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoG6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoHKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoHaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoHqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoH6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoIKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoIaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoIqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoI6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoJKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoJaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajIoJqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoJ6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoKKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoKaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoKqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoK6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoLKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoLaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoLqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoL6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajIoMKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIoMaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajIoMqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSYEKetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_11_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYEaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYEqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYE6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYFKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYFaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYFqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYF6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYGKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYGaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYGqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYG6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYHKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYHaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYHqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYH6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYIKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYIaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYIqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYI6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYJKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYJaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYJqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYJ6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYKKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYKaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ajSYKqetEeSgvuE9XIvLDQ" name="CopyOf_Package1_6">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSYK6etEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYLKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYLaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYLqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYL6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYMKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYMaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYMqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYM6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYNKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYNaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYNqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYN6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYOKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYOaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYOqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYO6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYPKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYPaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYPqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYP6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYQKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYQaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYQqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYQ6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYRKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ajSYRaetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSYRqetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSYR6etEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSYSKetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSYSaetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSYSqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYS6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYTKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYTaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYTqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYT6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYUKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYUaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYUqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYU6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYVKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYVaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYVqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYV6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYWKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYWaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYWqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYW6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYXKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYXaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYXqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYX6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYYKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYYaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYYqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYY6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSYZKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYZaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYZqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYZ6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYaKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYaaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYaqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYa6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYbKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYbaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYbqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYb6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYcKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYcaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYcqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYc6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYdKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYdaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYdqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYd6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYeKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYeaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYeqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYe6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYfKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYfaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSYfqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYf6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYgKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYgaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYgqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYg6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYhKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYhaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYhqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYh6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYiKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYiaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYiqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYi6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYjKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYjaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYjqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYj6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYkKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYkaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYkqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYk6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYlKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYlaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYlqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYl6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSYmKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYmaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYmqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYm6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYnKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYnaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYnqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYn6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYoKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYoaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYoqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYo6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYpKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYpaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYpqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYp6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYqKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYqaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYqqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYq6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYrKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYraetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYrqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYr6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYsKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYsaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSYsqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYs6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYtKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYtaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYtqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYt6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYuKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYuaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYuqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYu6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYvKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYvaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYvqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYv6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYwKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYwaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYwqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYw6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYxKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYxaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYxqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYx6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYyKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSYyaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYyqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSYy6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSYzKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYzaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYzqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSYz6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY0KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY0aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY0qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY06etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY1KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY1aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY1qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY16etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY2KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY2aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY2qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY26etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY3KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY3aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY3qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY36etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY4KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY4aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY4qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY46etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSY5KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSY5aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSY5qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY56etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY6KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY6aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY6qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY66etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY7KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY7aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY7qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY76etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY8KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY8aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY8qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSY86etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY9KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY9aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY9qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY96etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY-KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY-aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY-qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY-6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY_KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSY_aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSY_qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSY_6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZAKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZAaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZAqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZA6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZBKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZBaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZBqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZB6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZCKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZCaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZCqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZC6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZDKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZDaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZDqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZD6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZEKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZEaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZEqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZE6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZFKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZFaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZFqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZF6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZGKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZGaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZGqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZG6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZHKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZHaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZHqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZH6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZIKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZIaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZIqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZI6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZJKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZJaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZJqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZJ6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZKKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZKaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZKqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZK6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZLKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZLaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZLqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZL6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZMKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZMaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZMqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZM6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZNKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZNaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZNqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZN6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZOKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZOaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZOqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZO6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZPKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZPaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZPqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZP6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZQKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZQaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZQqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZQ6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZRKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZRaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZRqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZR6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZSKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZSaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZSqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZS6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZTKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZTaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZTqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZT6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZUKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZUaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZUqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZU6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZVKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZVaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZVqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZV6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZWKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZWaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZWqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZW6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZXKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZXaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZXqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZX6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZYKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZYaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZYqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZY6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZZKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZZaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZZqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZZ6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ajSZaKetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_1_3">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZaaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZaqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZa6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZbKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZbaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZbqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZb6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZcKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZcaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZcqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZc6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZdKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZdaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZdqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZd6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZeKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZeaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZeqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZe6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZfKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZfaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZfqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZf6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZgKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZgaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZgqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ajSZg6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSZhKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSZhaetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSZhqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSZh6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZiKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZiaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZiqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZi6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZjKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZjaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZjqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZj6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZkKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZkaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZkqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZk6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZlKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZlaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZlqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZl6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZmKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZmaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZmqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZm6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZnKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZnaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZnqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZn6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZoKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZoaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZoqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZo6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZpKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZpaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZpqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZp6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZqKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZqaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZqqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZq6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZrKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZraetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZrqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZr6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZsKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZsaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZsqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZs6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZtKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZtaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZtqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZt6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZuKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZuaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZuqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZu6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZvKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZvaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZvqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZv6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZwKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZwaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZwqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZw6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZxKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZxaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZxqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZx6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZyKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZyaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZyqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZy6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZzKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZzaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZzqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZz6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ0KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ0aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ0qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ06etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZ1KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZ1aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZ1qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ16etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ2KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ2aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ2qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ26etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ3KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ3aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ3qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ36etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ4KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ4aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ4qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ46etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ5KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ5aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ5qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ56etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ6KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ6aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ6qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ66etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ7KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ7aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZ7qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSZ76etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSZ8KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ8aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ8qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ86etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ9KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ9aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ9qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ96etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ-KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ-aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ-qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ-6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ_KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSZ_aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ_qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSZ_6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaAKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaAaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaAqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaA6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaBKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaBaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaBqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaB6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaCKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaCaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSaCqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaC6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaDKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaDaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaDqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaD6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaEKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaEaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaEqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaE6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaFKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaFaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaFqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaF6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaGKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaGaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaGqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaG6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaHKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaHaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaHqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaH6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaIKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaIaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaIqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaI6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSaJKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaJaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaJqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaJ6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaKKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaKaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaKqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaK6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaLKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaLaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaLqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaL6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaMKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaMaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaMqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaM6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaNKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaNaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaNqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaN6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaOKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaOaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaOqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaO6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaPKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaPaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSaPqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaP6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaQKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaQaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaQqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaQ6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaRKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaRaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaRqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaR6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaSKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaSaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaSqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaS6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaTKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaTaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaTqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaT6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaUKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaUaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaUqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaU6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaVKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaVaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaVqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaV6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSaWKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaWaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaWqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaW6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaXKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaXaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaXqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaX6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaYKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaYaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaYqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaY6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaZKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaZaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaZqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaZ6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaaKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaaaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaaqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaa6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSabKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSabaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSabqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSab6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSacKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSacaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSacqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSac6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSadKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSadaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSadqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSad6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaeKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaeaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaeqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSae6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSafKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSafaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSafqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaf6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSagKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSagaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSagqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSag6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSahKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSahaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSahqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSah6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaiKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaiaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSaiqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSai6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSajKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSajaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSajqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaj6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSakKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSakaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSakqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSak6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSalKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSalaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSalqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSal6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSamKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSamaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSamqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSam6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSanKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSanaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSanqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSan6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaoKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaoaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSaoqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSao6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSapKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSapaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ajSapqetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_2_3">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSap6etEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaqKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaqaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaqqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaq6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSarKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaraetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSarqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSar6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSasKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSasaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSasqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSas6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSatKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSataetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSatqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSat6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSauKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSauaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSauqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSau6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSavKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSavaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSavqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSav6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSawKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ajSawaetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSawqetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSaw6etEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSaxKetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajSaxaetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSaxqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSax6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSayKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSayaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSayqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSay6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSazKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSazaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSazqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSaz6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa0KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa0aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa0qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa06etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa1KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa1aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa1qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa16etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa2KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa2aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa2qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa26etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa3KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa3aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSa3qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSa36etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSa4KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa4aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa4qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa46etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa5KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa5aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa5qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa56etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa6KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa6aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa6qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa66etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa7KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa7aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa7qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa76etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa8KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa8aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa8qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa86etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa9KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa9aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa9qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSa96etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSa-KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSa-aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSa-qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa-6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa_KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa_aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa_qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSa_6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbAKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbAaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbAqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbA6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbBKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbBaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbBqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbB6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbCKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbCaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbCqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbC6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbDKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbDaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbDqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbD6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbEKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbEaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbEqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbE6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSbFKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbFaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbFqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbF6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbGKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbGaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbGqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbG6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbHKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbHaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbHqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbH6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbIKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbIaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbIqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbI6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbJKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbJaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbJqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbJ6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbKKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbKaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbKqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbK6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbLKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbLaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSbLqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbL6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbMKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbMaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbMqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbM6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbNKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbNaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbNqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbN6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbOKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbOaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbOqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbO6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbPKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbPaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbPqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbP6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbQKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbQaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbQqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbQ6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbRKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbRaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbRqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbR6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSbSKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbSaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbSqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbS6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbTKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbTaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbTqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbT6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbUKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbUaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbUqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbU6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbVKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbVaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbVqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbV6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbWKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbWaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbWqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbW6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbXKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbXaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbXqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbX6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbYKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbYaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSbYqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbY6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbZKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbZaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbZqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbZ6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbaKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbaaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbaqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSba6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbbKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbbaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbbqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbb6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbcKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbcaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbcqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbc6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbdKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbdaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbdqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbd6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbeKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbeaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbeqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbe6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSbfKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbfaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbfqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbf6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbgKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbgaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbgqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbg6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbhKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbhaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbhqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbh6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbiKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbiaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbiqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbi6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbjKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbjaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbjqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbj6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbkKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbkaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbkqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbk6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSblKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSblaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSblqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbl6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbmKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbmaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbmqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbm6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbnKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbnaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbnqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbn6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSboKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSboaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSboqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbo6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbpKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbpaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbpqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbp6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbqKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbqaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbqqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbq6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbrKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbraetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbrqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbr6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSbsKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbsaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbsqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbs6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbtKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbtaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbtqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbt6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbuKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbuaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbuqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbu6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbvKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbvaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbvqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbv6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbwKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbwaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbwqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbw6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbxKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbxaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbxqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSbx6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbyKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSbyaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSbyqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSby6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbzKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbzaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbzqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSbz6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb0KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb0aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb0qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb06etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb1KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb1aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb1qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb16etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb2KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb2aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb2qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb26etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb3KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb3aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb3qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb36etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb4KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb4aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSb4qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSb46etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_ajSb5KetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_3_3">
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSb5aetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb5qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb56etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb6KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb6aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb6qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb66etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb7KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb7aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb7qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb76etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb8KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb8aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSb8qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb86etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb9KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb9aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb9qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb96etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb-KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb-aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb-qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb-6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSb_KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSb_aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSb_qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ajSb_6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajScAKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajScAaetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajScAqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_ajScA6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajScBKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScBaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScBqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScB6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScCKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScCaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScCqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScC6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScDKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScDaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScDqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScD6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScEKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScEaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScEqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScE6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScFKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScFaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScFqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScF6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScGKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScGaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScGqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScG6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScHKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScHaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajScHqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScH6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScIKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScIaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScIqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScI6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScJKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScJaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScJqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScJ6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScKKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScKaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScKqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScK6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScLKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScLaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScLqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScL6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScMKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScMaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScMqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScM6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScNKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScNaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScNqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScN6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajScOKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScOaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScOqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScO6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScPKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScPaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScPqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScP6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScQKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScQaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScQqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScQ6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScRKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScRaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScRqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScR6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScSKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScSaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScSqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScS6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScTKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScTaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScTqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScT6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScUKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScUaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajScUqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScU6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScVKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScVaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScVqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScV6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScWKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScWaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScWqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScW6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScXKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScXaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScXqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScX6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScYKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScYaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScYqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScY6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScZKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScZaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScZqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScZ6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScaKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScaaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScaqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSca6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajScbKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScbaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScbqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScb6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSccKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSccaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSccqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScc6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScdKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScdaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScdqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScd6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSceKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSceaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSceqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSce6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScfKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScfaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScfqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScf6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScgKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScgaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScgqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScg6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSchKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSchaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSchqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSch6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSciKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSciaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSciqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSci6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScjKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScjaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScjqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScj6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSckKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSckaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSckqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSck6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSclKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSclaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSclqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScl6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScmKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScmaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScmqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScm6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScnKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScnaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScnqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScn6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajScoKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScoaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScoqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSco6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScpKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScpaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScpqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScp6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScqKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScqaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScqqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScq6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScrKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScraetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScrqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScr6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScsKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScsaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScsqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScs6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSctKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSctaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSctqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSct6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScuKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajScuaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajScuqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScu6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScvKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScvaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScvqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScv6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScwKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScwaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScwqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScw6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScxKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScxaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScxqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajScx6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScyKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScyaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScyqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScy6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSczKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSczaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSczqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajScz6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc0KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc0aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSc0qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSc06etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSc1KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc1aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc1qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc16etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc2KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc2aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc2qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc26etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc3KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc3aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc3qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc36etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc4KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc4aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc4qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc46etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc5KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc5aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc5qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc56etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc6KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc6aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc6qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc66etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSc7KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSc7aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSc7qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc76etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc8KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc8aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc8qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc86etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc9KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc9aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc9qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc96etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc-KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc-aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc-qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSc-6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc_KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc_aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc_qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSc_6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdAKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdAaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdAqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdA6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdBKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdBaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSdBqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSdB6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ajSdCKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdCaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdCqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdC6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdDKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdDaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdDqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdD6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdEKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdEaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdEqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdE6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdFKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_ajSdFaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdFqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdF6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdGKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdGaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdGqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdG6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdHKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdHaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdHqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_ajSdH6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSdIKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_ajSdIaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_RXev0KetEeSgvuE9XIvLDQ" name="Interface1"/>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_RbDBMKetEeSgvuE9XIvLDQ" name="Interface2"/>
+ <packagedElement xmi:type="uml:Constraint" xmi:id="_U2o-UKetEeSgvuE9XIvLDQ" name="Constraint1">
+ <specification xmi:type="uml:LiteralString" xmi:id="_U2o-UaetEeSgvuE9XIvLDQ" value=""/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHwtQKetEeSgvuE9XIvLDQ" name="CopyOf_Package1_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwtQaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtQqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtQ6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtRKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtRaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtRqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtR6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtSKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtSaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtSqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtS6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtTKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtTaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtTqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtT6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtUKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtUaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtUqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtU6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtVKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtVaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtVqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtV6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtWKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwtWaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwtWqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHwtW6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwtXKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwtXaetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwtXqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwtX6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwtYKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtYaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtYqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtY6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtZKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtZaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtZqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtZ6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtaKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtaaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtaqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwta6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtbKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtbaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtbqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtb6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtcKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtcaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtcqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtc6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtdKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtdaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtdqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtd6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwteKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwteaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwteqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwte6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtfKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtfaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtfqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtf6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtgKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtgaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtgqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtg6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwthKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwthaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwthqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwth6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtiKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtiaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtiqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwti6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtjKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtjaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtjqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtj6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtkKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtkaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwtkqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwtk6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwtlKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtlaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtlqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtl6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtmKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtmaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtmqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtm6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtnKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtnaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtnqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtn6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtoKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtoaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtoqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwto6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtpKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtpaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtpqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtp6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtqKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtqaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtqqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtq6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwtrKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwtraetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwtrqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtr6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtsKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtsaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtsqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwts6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwttKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwttaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwttqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtt6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtuKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtuaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtuqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtu6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtvKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtvaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtvqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtv6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtwKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtwaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtwqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtw6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtxKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwtxaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwtxqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwtx6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwtyKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtyaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtyqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwty6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtzKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtzaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtzqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwtz6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt0KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt0aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt0qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt06etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt1KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt1aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt1qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt16etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt2KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt2aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt2qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt26etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt3KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt3aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt3qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt36etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwt4KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwt4aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwt4qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt46etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt5KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt5aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt5qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt56etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt6KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt6aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt6qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt66etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt7KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt7aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt7qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt76etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt8KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt8aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt8qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt86etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt9KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt9aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt9qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt96etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt-KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwt-aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwt-qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwt-6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwt_KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt_aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt_qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwt_6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuAKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuAaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuAqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuA6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuBKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuBaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuBqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuB6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuCKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuCaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuCqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuC6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuDKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuDaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuDqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuD6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuEKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuEaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuEqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuE6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwuFKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwuFaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwuFqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuF6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuGKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuGaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuGqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuG6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuHKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuHaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuHqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuH6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuIKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuIaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuIqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuI6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuJKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuJaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuJqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuJ6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuKKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuKaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuKqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuK6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuLKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuLaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwuLqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwuL6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwuMKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuMaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuMqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuM6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuNKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuNaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuNqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuN6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuOKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuOaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuOqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuO6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuPKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuPaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuPqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuP6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuQKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuQaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuQqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuQ6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuRKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuRaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuRqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuR6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwuSKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwuSaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwuSqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuS6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuTKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuTaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuTqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuT6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuUKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuUaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuUqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuU6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuVKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuVaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuVqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuV6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuWKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuWaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuWqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuW6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuXKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuXaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuXqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuX6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuYKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuYaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwuYqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwuY6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwuZKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuZaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuZqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuZ6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuaKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuaaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuaqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwua6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwubKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwubaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwubqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwub6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwucKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwucaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwucqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuc6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwudKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwudaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwudqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwud6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwueKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwueaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwueqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwue6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwufKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwufaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHwufqetEeSgvuE9XIvLDQ" name="Package1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwuf6etEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwugKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwugaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwugqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwug6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuhKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuhaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuhqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuh6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuiKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuiaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuiqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwui6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwujKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwujaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwujqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuj6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwukKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwukaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwukqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuk6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwulKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwulaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwulqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwul6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwumKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHwumaetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwumqetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwum6etEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwunKetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwunaetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwunqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwun6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuoKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuoaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuoqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuo6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwupKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwupaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwupqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwup6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuqKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuqaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuqqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuq6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwurKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuraetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwurqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwur6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwusKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwusaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwusqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwus6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwutKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwutaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwutqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwut6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwuuKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuuaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuuqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuu6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuvKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuvaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuvqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuv6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuwKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuwaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuwqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuw6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuxKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwuxaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuxqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwux6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuyKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuyaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuyqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuy6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuzKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuzaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuzqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwuz6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwu0KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwu0aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwu0qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu06etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu1KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu1aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu1qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu16etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu2KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu2aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu2qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu26etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu3KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu3aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu3qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu36etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu4KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu4aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu4qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu46etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu5KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu5aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu5qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu56etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu6KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu6aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwu6qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwu66etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwu7KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu7aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu7qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu76etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu8KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu8aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu8qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu86etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu9KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu9aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu9qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu96etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu-KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwu-aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu-qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu-6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu_KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu_aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu_qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwu_6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvAKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvAaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvAqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvA6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvBKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvBaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwvBqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvB6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvCKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvCaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvCqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvC6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvDKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvDaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvDqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvD6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvEKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvEaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvEqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvE6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvFKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvFaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvFqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvF6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvGKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvGaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvGqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvG6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvHKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvHaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvHqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvH6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwvIKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvIaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvIqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvI6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvJKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvJaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvJqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvJ6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvKKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvKaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvKqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvK6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvLKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvLaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvLqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvL6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvMKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvMaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvMqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvM6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvNKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvNaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvNqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvN6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvOKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvOaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwvOqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvO6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvPKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvPaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvPqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvP6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvQKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvQaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvQqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvQ6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvRKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvRaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvRqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvR6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvSKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvSaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvSqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvS6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvTKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvTaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvTqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvT6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvUKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvUaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvUqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvU6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwvVKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvVaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvVqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvV6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvWKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvWaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvWqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvW6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvXKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvXaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvXqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvX6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvYKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvYaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvYqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvY6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvZKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvZaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvZqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvZ6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvaKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvaaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvaqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwva6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvbKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvbaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwvbqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvb6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvcKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvcaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvcqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvc6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvdKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvdaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvdqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvd6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwveKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwveaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwveqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwve6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvfKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvfaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvfqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvf6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvgKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvgaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvgqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvg6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvhKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvhaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvhqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvh6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwviKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwviaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwviqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvi6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvjKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvjaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvjqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvj6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvkKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvkaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvkqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvk6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvlKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvlaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvlqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvl6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvmKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvmaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvmqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvm6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvnKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvnaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvnqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvn6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvoKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvoaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwvoqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvo6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvpKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvpaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvpqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvp6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvqKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvqaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvqqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvq6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvrKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvraetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvrqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvr6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvsKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvsaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvsqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvs6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvtKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvtaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvtqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvt6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvuKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvuaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvuqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwvu6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHwvvKetEeSgvuE9XIvLDQ" name="CopyOf_Package1_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwvvaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvvqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvv6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvwKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvwaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvwqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvw6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvxKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvxaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvxqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvx6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvyKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvyaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwvyqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvy6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvzKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvzaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvzqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwvz6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv0KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv0aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv0qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv06etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv1KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwv1aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwv1qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHwv16etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwv2KetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwv2aetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwv2qetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwv26etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwv3KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv3aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv3qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv36etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv4KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv4aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv4qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv46etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv5KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv5aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv5qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv56etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv6KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv6aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv6qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv66etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv7KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv7aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv7qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv76etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv8KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv8aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv8qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwv86etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwv9KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwv9aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwv9qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv96etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv-KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv-aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv-qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv-6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv_KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv_aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv_qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwv_6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwAKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwAaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwAqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwA6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwBKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwBaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwBqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwB6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwCKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwCaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwCqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwC6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwDKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwDaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwDqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwD6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwwEKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwEaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwEqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwE6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwFKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwFaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwFqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwF6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwGKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwGaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwGqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwG6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwHKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwHaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwHqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwH6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwIKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwIaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwIqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwI6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwJKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwJaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwJqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwJ6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwKKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwKaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwwKqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwK6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwLKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwLaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwLqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwL6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwMKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwMaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwMqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwM6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwNKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwNaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwNqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwN6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwOKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwOaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwOqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwO6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwPKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwPaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwPqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwP6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwQKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwQaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwQqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwQ6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwwRKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwRaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwRqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwR6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwSKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwSaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwSqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwS6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwTKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwTaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwTqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwT6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwUKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwUaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwUqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwU6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwVKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwVaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwVqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwV6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwWKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwWaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwWqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwW6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwXKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwXaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwwXqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwX6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwYKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwYaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwYqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwY6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwZKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwZaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwZqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwZ6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwaKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwaaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwaqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwa6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwbKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwbaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwbqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwb6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwcKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwcaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwcqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwc6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwdKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwdaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwdqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwd6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwweKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwweaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwweqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwe6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwfKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwfaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwfqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwf6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwgKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwgaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwgqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwg6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwhKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwhaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwhqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwh6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwiKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwiaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwiqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwi6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwjKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwjaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwjqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwj6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwkKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwkaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwwkqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwk6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwlKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwlaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwlqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwl6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwmKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwmaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwmqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwm6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwnKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwnaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwnqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwn6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwoKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwoaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwoqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwo6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwpKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwpaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwpqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwp6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwqKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwqaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwqqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwq6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwwrKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwraetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwrqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwr6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwsKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwsaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwsqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwws6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwtKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwtaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwtqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwt6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwuKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwuaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwuqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwu6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwvKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwvaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwvqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwv6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwwKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwwaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwwwqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwww6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwxKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwwxaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwwxqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwx6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwyKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwyaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwyqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwy6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwzKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwzaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwzqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwwz6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww0KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww0aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww0qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww06etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww1KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww1aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww1qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww16etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww2KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww2aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww2qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww26etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww3KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww3aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHww3qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHww36etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHww4KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww4aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww4qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww46etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww5KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww5aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww5qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww56etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww6KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww6aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww6qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww66etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww7KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww7aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww7qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww76etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww8KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww8aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww8qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww86etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww9KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww9aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww9qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHww96etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHww-KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHww-aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHww-qetEeSgvuE9XIvLDQ" name="CopyOf_Package1_2">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHww-6etEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww_KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww_aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww_qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHww_6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxAKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxAaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxAqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxA6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxBKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxBaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxBqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxB6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxCKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxCaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxCqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxC6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxDKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxDaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxDqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxD6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxEKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxEaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxEqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxE6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxFKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHwxFaetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwxFqetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwxF6etEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwxGKetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwxGaetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwxGqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxG6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxHKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxHaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxHqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxH6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxIKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxIaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxIqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxI6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxJKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxJaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxJqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxJ6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxKKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxKaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxKqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxK6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxLKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxLaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxLqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxL6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxMKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxMaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxMqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxM6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwxNKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxNaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxNqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxN6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxOKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxOaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxOqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxO6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxPKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxPaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxPqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxP6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxQKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxQaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxQqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxQ6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxRKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxRaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxRqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxR6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxSKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxSaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxSqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxS6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxTKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxTaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwxTqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxT6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxUKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxUaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxUqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxU6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxVKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxVaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxVqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxV6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxWKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxWaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxWqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxW6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxXKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxXaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxXqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxX6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxYKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxYaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxYqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxY6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxZKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxZaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxZqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxZ6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwxaKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxaaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxaqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxa6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxbKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxbaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxbqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxb6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxcKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxcaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxcqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxc6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxdKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxdaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxdqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxd6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxeKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxeaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxeqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxe6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxfKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxfaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxfqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxf6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxgKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxgaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwxgqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxg6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxhKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxhaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxhqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxh6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxiKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxiaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxiqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxi6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxjKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxjaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxjqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxj6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxkKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxkaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxkqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxk6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxlKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxlaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxlqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxl6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxmKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxmaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxmqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxm6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwxnKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxnaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxnqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxn6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxoKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxoaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxoqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxo6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxpKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxpaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxpqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxp6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxqKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxqaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxqqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxq6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxrKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxraetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxrqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxr6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxsKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxsaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxsqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxs6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxtKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxtaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwxtqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxt6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxuKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxuaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxuqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxu6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxvKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxvaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxvqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxv6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxwKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxwaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxwqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwxw6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxxKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxxaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxxqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxx6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxyKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxyaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxyqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxy6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxzKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwxzaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxzqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwxz6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwx0KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx0aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx0qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx06etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx1KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx1aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx1qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx16etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx2KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx2aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx2qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx26etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx3KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx3aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx3qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx36etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx4KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx4aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx4qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx46etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx5KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx5aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx5qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx56etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwx6KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwx6aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwx6qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx66etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx7KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx7aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx7qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx76etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx8KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx8aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx8qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx86etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx9KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx9aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx9qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwx96etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx-KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx-aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx-qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx-6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx_KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx_aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx_qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwx_6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyAKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyAaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyAqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyA6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwyBKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyBaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyBqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyB6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyCKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyCaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyCqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyC6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyDKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyDaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyDqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyD6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyEKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyEaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyEqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyE6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyFKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyFaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyFqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyF6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyGKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyGaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyGqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyG6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyHKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyHaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwyHqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyH6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyIKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyIaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyIqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyI6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyJKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyJaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyJqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyJ6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyKKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyKaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyKqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyK6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyLKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyLaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyLqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyL6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyMKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyMaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyMqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyM6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyNKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyNaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyNqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyN6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHwyOKetEeSgvuE9XIvLDQ" name="CopyOf_Package1_3">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwyOaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyOqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyO6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyPKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyPaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyPqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyP6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyQKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyQaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyQqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyQ6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyRKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyRaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyRqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyR6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwySKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwySaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwySqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyS6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyTKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyTaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyTqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyT6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyUKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyUaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyUqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHwyU6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwyVKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwyVaetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwyVqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwyV6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwyWKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyWaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyWqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyW6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyXKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyXaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyXqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyX6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyYKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyYaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyYqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyY6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyZKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyZaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyZqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyZ6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyaKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyaaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyaqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwya6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwybKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwybaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwybqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyb6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwycKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwycaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwycqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyc6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwydKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwydaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwydqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyd6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyeKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyeaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyeqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwye6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyfKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyfaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyfqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyf6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwygKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwygaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwygqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyg6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyhKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyhaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyhqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyh6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyiKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyiaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyiqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyi6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwyjKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyjaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyjqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyj6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwykKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwykaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwykqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyk6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwylKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwylaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwylqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyl6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwymKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwymaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwymqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwym6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwynKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwynaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwynqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyn6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyoKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyoaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyoqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyo6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwypKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwypaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwypqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyp6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyqKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyqaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyqqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyq6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyrKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyraetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyrqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyr6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwysKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwysaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwysqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwys6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwytKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwytaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwytqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyt6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyuKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyuaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyuqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyu6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyvKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyvaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyvqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwyv6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwywKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwywaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwywqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyw6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyxKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyxaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyxqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyx6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyyKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyyaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyyqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyy6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyzKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwyzaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyzqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwyz6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy0KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy0aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy0qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy06etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy1KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy1aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy1qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy16etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwy2KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwy2aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwy2qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy26etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy3KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy3aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy3qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy36etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy4KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy4aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy4qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy46etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy5KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy5aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy5qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy56etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy6KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy6aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy6qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy66etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy7KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy7aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy7qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy76etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy8KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwy8aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwy8qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwy86etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwy9KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy9aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy9qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy96etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy-KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy-aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy-qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy-6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy_KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy_aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy_qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwy_6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzAKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzAaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzAqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzA6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzBKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzBaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzBqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzB6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzCKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzCaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzCqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzC6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzDKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzDaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwzDqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzD6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzEKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzEaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzEqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzE6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzFKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzFaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzFqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzF6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzGKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzGaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzGqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzG6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzHKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzHaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzHqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzH6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzIKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzIaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzIqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzI6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzJKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzJaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzJqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzJ6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwzKKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzKaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzKqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzK6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzLKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzLaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzLqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzL6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzMKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzMaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzMqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzM6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzNKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzNaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzNqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzN6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzOKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzOaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzOqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzO6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzPKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzPaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzPqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzP6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzQKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzQaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwzQqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzQ6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzRKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzRaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzRqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzR6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzSKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzSaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzSqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzS6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzTKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzTaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzTqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzT6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzUKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzUaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzUqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzU6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzVKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzVaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzVqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzV6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzWKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzWaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzWqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzW6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwzXKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzXaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzXqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzX6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzYKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzYaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzYqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzY6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzZKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzZaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzZqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzZ6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzaKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzaaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzaqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwza6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzbKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzbaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzbqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzb6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzcKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzcaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzcqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzc6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzdKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzdaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwzdqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_12">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzd6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzeKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzeaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzeqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwze6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzfKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzfaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzfqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzf6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzgKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzgaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzgqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzg6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzhKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzhaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzhqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzh6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwziKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwziaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwziqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzi6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzjKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzjaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzjqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzj6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHwzkKetEeSgvuE9XIvLDQ" name="CopyOf_Enumeration1_1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwzkaetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwzkqetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwzk6etEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHwzlKetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwzlaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzlqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzl6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzmKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzmaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzmqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzm6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwznKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwznaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwznqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzn6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzoKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzoaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzoqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzo6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzpKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzpaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzpqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzp6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzqKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzqaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzqqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzq6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzrKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzraetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzrqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwzr6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_2_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzsKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzsaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzsqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzs6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwztKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwztaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwztqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzt6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzuKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzuaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzuqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzu6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzvKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzvaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzvqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzv6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzwKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzwaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzwqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzw6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzxKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzxaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwzxqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzx6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwzyKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwzyaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_3_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzyqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzy6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzzKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzzaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzzqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwzz6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz0KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz0aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz0qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz06etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz1KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz1aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz1qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz16etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz2KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz2aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz2qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz26etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz3KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz3aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz3qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz36etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz4KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwz4aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwz4qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwz46etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_4_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz5KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz5aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz5qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz56etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz6KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz6aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz6qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz66etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz7KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz7aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz7qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz76etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz8KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz8aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz8qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz86etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz9KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz9aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz9qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz96etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz-KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz-aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHwz-qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwz-6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHwz_KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHwz_aetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_5_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz_qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHwz_6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0AKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0AaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0AqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0A6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0BKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0BaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0BqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0B6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0CKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0CaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0CqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0C6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0DKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0DaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0DqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0D6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0EKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0EaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0EqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0E6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0FKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0FaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0FqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw0F6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_6_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0GKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0GaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0GqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0G6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0HKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0HaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0HqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0H6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0IKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0IaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0IqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0I6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0JKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0JaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0JqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0J6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0KKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0KaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0KqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0K6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0LKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0LaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0LqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0L6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0MKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw0MaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_7_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0MqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0M6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0NKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0NaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0NqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0N6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0OKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0OaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0OqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0O6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0PKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0PaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0PqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0P6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0QKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0QaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0QqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0Q6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0RKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0RaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0RqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0R6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0SKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0SaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0SqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw0S6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_8_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0TKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0TaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0TqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0T6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0UKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0UaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0UqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0U6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0VKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0VaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0VqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0V6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0WKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0WaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0WqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0W6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0XKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0XaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0XqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0X6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0YKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0YaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0YqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0Y6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0ZKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw0ZaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_9_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0ZqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0Z6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0aKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0aaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0aqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0a6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0bKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0baetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0bqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0b6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0cKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0caetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0cqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0c6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0dKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0daetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0dqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0d6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0eKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0eaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0eqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0e6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0fKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0faetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0fqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw0f6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_10_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0gKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0gaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0gqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0g6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0hKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0haetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0hqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0h6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0iKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0iaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0iqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0i6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0jKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0jaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0jqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0j6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0kKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0kaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0kqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0k6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0lKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0laetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0lqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0l6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0mKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw0maetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_11_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0mqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0m6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0nKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0naetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0nqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0n6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0oKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0oaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0oqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0o6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0pKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0paetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0pqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0p6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0qKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0qaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0qqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0q6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0rKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0raetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0rqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0r6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0sKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0saetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0sqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHw0s6etEeSgvuE9XIvLDQ" name="CopyOf_Package1_4">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw0tKetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0taetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0tqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0t6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0uKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0uaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0uqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0u6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0vKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0vaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0vqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0v6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0wKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0waetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0wqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0w6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0xKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0xaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0xqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0x6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0yKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0yaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0yqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0y6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0zKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw0zaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHw0zqetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw0z6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw00KetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw00aetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw00qetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw006etEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw01KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw01aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw01qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw016etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw02KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw02aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw02qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw026etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw03KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw03aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw03qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw036etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw04KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw04aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw04qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw046etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw05KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw05aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw05qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw056etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw06KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw06aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw06qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw066etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw07KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw07aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw07qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw076etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw08KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw08aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw08qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw086etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw09KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw09aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw09qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw096etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0-KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0-aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw0-qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0-6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0_KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0_aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0_qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw0_6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1AKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1AaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1AqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1A6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1BKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1BaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1BqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw1B6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1CKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1CaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1CqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1C6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1DKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1DaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1DqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1D6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1EKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1EaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1EqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1E6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1FKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1FaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1FqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1F6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1GKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1GaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1GqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1G6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1HKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1HaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1HqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1H6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1IKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw1IaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1IqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1I6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1JKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1JaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1JqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1J6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1KKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1KaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1KqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1K6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1LKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1LaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1LqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1L6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1MKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1MaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1MqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1M6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1NKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1NaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1NqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1N6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1OKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1OaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1OqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw1O6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1PKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1PaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1PqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1P6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1QKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1QaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1QqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1Q6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1RKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1RaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1RqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1R6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1SKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1SaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1SqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1S6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1TKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1TaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1TqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1T6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1UKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1UaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1UqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1U6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1VKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw1VaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1VqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1V6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1WKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1WaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1WqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1W6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1XKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1XaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1XqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1X6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1YKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1YaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1YqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1Y6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1ZKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1ZaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1ZqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1Z6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1aKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1aaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1aqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1a6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1bKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1baetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1bqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw1b6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1cKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1caetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1cqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1c6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1dKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1daetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1dqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1d6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1eKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1eaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1eqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1e6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1fKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1faetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1fqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1f6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1gKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1gaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1gqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1g6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1hKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1haetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1hqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1h6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1iKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw1iaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1iqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1i6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1jKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1jaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1jqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1j6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1kKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1kaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1kqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1k6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1lKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1laetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1lqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1l6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1mKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1maetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1mqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1m6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1nKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1naetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1nqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1n6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1oKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1oaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1oqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw1o6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1pKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1paetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1pqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1p6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1qKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1qaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1qqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1q6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1rKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1raetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1rqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1r6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1sKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1saetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1sqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1s6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1tKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1taetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1tqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1t6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1uKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1uaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1uqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1u6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw1vKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw1vaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1vqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1v6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1wKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1waetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1wqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1w6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1xKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1xaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1xqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1x6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1yKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1yaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1yqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1y6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1zKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1zaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1zqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw1z6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw10KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw10aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw10qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw106etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw11KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw11aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw11qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw116etEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw12KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw12aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw12qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw126etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw13KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw13aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw13qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw136etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw14KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw14aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw14qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw146etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw15KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw15aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw15qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw156etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw16KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw16aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw16qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw166etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw17KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw17aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw17qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw176etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw18KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHw18aetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_1_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw18qetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw186etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw19KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw19aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw19qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw196etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1-KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1-aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1-qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1-6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1_KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1_aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1_qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw1_6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2AKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2AaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2AqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2A6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2BKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2BaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2BqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2B6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2CKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2CaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2CqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2C6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHw2DKetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw2DaetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw2DqetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw2D6etEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw2EKetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2EaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2EqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2E6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2FKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2FaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2FqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2F6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2GKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2GaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2GqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2G6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2HKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2HaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2HqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2H6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2IKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2IaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2IqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2I6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2JKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2JaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2JqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2J6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2KKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2KaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2KqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2K6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2LKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2LaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2LqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2L6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2MKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2MaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2MqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2M6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2NKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2NaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2NqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2N6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2OKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2OaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2OqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2O6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2PKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2PaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2PqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2P6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2QKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2QaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2QqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2Q6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2RKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2RaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2RqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2R6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2SKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2SaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2SqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2S6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2TKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2TaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2TqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2T6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2UKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2UaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2UqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2U6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2VKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2VaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2VqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2V6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2WKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2WaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2WqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2W6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2XKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2XaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2XqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2X6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2YKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2YaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2YqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2Y6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2ZKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2ZaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2ZqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2Z6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2aKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2aaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2aqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2a6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2bKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2baetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2bqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2b6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2cKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2caetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2cqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2c6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2dKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2daetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2dqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2d6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2eKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2eaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2eqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2e6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2fKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2faetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2fqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2f6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2gKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2gaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2gqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2g6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2hKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2haetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2hqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2h6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2iKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2iaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2iqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2i6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2jKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2jaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2jqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2j6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2kKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2kaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2kqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2k6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2lKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2laetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2lqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2l6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2mKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2maetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2mqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2m6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2nKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2naetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2nqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2n6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2oKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2oaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2oqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2o6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2pKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2paetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2pqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2p6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2qKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2qaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2qqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2q6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2rKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2raetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2rqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2r6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2sKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2saetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2sqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2s6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2tKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2taetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2tqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2t6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2uKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2uaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2uqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2u6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2vKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2vaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2vqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2v6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2wKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2waetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2wqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2w6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2xKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2xaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2xqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2x6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2yKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2yaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2yqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2y6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2zKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2zaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2zqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2z6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw20KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw20aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw20qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw206etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw21KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw21aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw21qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw216etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw22KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw22aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw22qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw226etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw23KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw23aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw23qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw236etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw24KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw24aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw24qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw246etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw25KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw25aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw25qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw256etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw26KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw26aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw26qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw266etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw27KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw27aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw27qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw276etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw28KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw28aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw28qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw286etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw29KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw29aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw29qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw296etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw2-KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2-aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw2-qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw2-6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2_KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2_aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2_qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw2_6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3AKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3AaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3AqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3A6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3BKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3BaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3BqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3B6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3CKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3CaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3CqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3C6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3DKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3DaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3DqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3D6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3EKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3EaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3EqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3E6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3FKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw3FaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3FqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3F6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3GKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3GaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3GqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3G6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3HKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3HaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3HqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3H6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3IKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3IaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3IqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3I6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3JKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3JaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3JqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3J6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3KKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3KaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3KqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3K6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3LKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3LaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3LqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHw3L6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_2_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw3MKetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3MaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3MqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3M6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3NKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3NaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3NqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3N6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3OKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3OaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3OqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3O6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3PKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3PaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3PqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3P6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3QKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3QaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3QqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3Q6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3RKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3RaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3RqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3R6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3SKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3SaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHw3SqetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw3S6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw3TKetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw3TaetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw3TqetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw3T6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3UKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3UaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3UqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3U6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3VKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3VaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3VqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3V6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3WKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3WaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3WqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3W6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3XKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3XaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3XqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3X6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3YKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3YaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3YqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3Y6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3ZKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3ZaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3ZqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3Z6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3aKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw3aaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3aqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3a6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3bKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3baetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3bqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3b6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3cKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3caetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3cqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3c6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3dKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3daetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3dqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3d6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3eKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3eaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3eqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3e6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3fKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3faetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3fqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3f6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3gKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3gaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3gqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw3g6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3hKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3haetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3hqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3h6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3iKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3iaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3iqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3i6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3jKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3jaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3jqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3j6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3kKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3kaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3kqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3k6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3lKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3laetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3lqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3l6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3mKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3maetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3mqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3m6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3nKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw3naetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3nqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3n6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3oKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3oaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3oqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3o6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3pKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3paetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3pqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3p6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3qKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3qaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3qqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3q6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3rKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3raetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3rqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3r6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3sKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3saetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3sqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3s6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3tKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3taetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3tqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw3t6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3uKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3uaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3uqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3u6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3vKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3vaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3vqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3v6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3wKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3waetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3wqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3w6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3xKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3xaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3xqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3x6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3yKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3yaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3yqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3y6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3zKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3zaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3zqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw3z6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw30KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw30aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw30qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw306etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw31KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw31aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw31qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw316etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw32KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw32aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw32qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw326etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw33KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw33aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw33qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw336etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw34KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw34aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw34qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw346etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw35KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw35aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw35qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw356etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw36KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw36aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw36qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw366etEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw37KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw37aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw37qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw376etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw38KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw38aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw38qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw386etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw39KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw39aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw39qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw396etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw3-KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3-aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3-qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3-6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3_KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3_aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3_qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw3_6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4AKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4AaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4AqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4A6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4BKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw4BaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4BqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4B6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4CKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4CaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4CqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4C6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4DKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4DaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4DqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4D6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4EKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4EaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4EqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4E6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4FKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4FaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4FqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4F6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4GKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4GaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4GqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4G6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4HKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4HaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4HqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw4H6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4IKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4IaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4IqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4I6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4JKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4JaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4JqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4J6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4KKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4KaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4KqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4K6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4LKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4LaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4LqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4L6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4MKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4MaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4MqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4M6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4NKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4NaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4NqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4N6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4OKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw4OaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4OqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4O6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4PKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4PaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4PqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4P6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4QKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4QaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4QqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4Q6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4RKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4RaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4RqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4R6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4SKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4SaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4SqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4S6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4TKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4TaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4TqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4T6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4UKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4UaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4UqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw4U6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4VKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4VaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4VqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4V6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4WKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4WaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4WqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4W6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4XKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4XaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4XqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4X6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4YKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4YaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4YqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4Y6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4ZKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4ZaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4ZqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4Z6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4aKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4aaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4aqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4a6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4bKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gHw4baetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_3_1">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw4bqetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4b6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4cKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4caetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4cqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4c6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4dKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4daetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4dqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4d6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4eKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4eaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4eqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4e6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4fKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4faetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4fqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4f6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4gKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4gaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4gqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4g6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4hKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4haetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4hqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4h6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHw4iKetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw4iaetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw4iqetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw4i6etEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw4jKetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw4jaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4jqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4j6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4kKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4kaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4kqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4k6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4lKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4laetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4lqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4l6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4mKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4maetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4mqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4m6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4nKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4naetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4nqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4n6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4oKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4oaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4oqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4o6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4pKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4paetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4pqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw4p6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4qKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4qaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4qqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4q6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4rKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4raetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4rqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4r6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4sKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4saetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4sqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4s6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4tKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4taetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4tqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4t6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4uKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4uaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4uqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4u6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4vKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4vaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4vqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4v6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw4wKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw4waetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4wqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4w6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4xKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4xaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4xqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4x6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4yKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4yaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4yqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4y6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4zKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4zaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4zqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw4z6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw40KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw40aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw40qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw406etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw41KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw41aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw41qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw416etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw42KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw42aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw42qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw426etEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw43KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw43aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw43qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw436etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw44KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw44aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw44qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw446etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw45KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw45aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw45qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw456etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw46KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw46aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw46qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw466etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw47KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw47aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw47qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw476etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw48KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw48aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw48qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw486etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw49KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw49aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw49qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw496etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4-KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4-aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4-qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4-6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4_KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4_aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4_qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw4_6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5AKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5AaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5AqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5A6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5BKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5BaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5BqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5B6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5CKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5CaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5CqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5C6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5DKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5DaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5DqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5D6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5EKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5EaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5EqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5E6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5FKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5FaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5FqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5F6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5GKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5GaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5GqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5G6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5HKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5HaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5HqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5H6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5IKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5IaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5IqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5I6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5JKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5JaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5JqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5J6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5KKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5KaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5KqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5K6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5LKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5LaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5LqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5L6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5MKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5MaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5MqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5M6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5NKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5NaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5NqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5N6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5OKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5OaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5OqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5O6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5PKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5PaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5PqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5P6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5QKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5QaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5QqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5Q6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5RKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5RaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5RqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5R6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5SKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5SaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5SqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5S6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5TKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5TaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5TqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5T6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5UKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5UaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5UqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5U6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5VKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5VaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5VqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5V6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5WKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5WaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5WqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5W6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5XKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5XaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5XqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5X6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5YKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5YaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5YqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5Y6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5ZKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5ZaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5ZqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5Z6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5aKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5aaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5aqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5a6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5bKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5baetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5bqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5b6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5cKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5caetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5cqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5c6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5dKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5daetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5dqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5d6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5eKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5eaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5eqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5e6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5fKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5faetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5fqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5f6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5gKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5gaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5gqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5g6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5hKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5haetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5hqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5h6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5iKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5iaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5iqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5i6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5jKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5jaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5jqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5j6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5kKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5kaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5kqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5k6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5lKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5laetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5lqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5l6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5mKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5maetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5mqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5m6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5nKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5naetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5nqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5n6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5oKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5oaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5oqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5o6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5pKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5paetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5pqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5p6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5qKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5qaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5qqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5q6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_13">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5rKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5raetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5rqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5r6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5sKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5saetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5sqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5s6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5tKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5taetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5tqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5t6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5uKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5uaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5uqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5u6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5vKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5vaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5vqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5v6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5wKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5waetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5wqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5w6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5xKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gHw5xaetEeSgvuE9XIvLDQ" name="CopyOf_Enumeration1_2">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw5xqetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw5x6etEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw5yKetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gHw5yaetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5yqetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5y6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5zKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5zaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5zqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5z6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw50KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw50aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw50qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw506etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw51KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw51aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw51qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw516etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw52KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw52aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw52qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw526etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw53KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw53aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw53qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw536etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw54KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw54aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw54qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw546etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw55KetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_2_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw55aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw55qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw556etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw56KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw56aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw56qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw566etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw57KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw57aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw57qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw576etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw58KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw58aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw58qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw586etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw59KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw59aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw59qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw596etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5-KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5-aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5-qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gHw5-6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5_KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gHw5_aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gHw5_qetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_3_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw5_6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6AKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6AaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6AqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6A6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6BKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6BaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6BqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6B6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6CKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6CaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6CqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gHw6C6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53MKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53MaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53MqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53M6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53NKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53NaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53NqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53N6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53OKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53OaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53OqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53O6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH53PKetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_4_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53PaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53PqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53P6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53QKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53QaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53QqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53Q6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53RKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53RaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53RqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53R6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53SKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53SaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53SqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53S6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53TKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53TaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53TqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53T6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53UKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53UaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53UqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53U6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53VKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53VaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH53VqetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_5_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53V6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53WKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53WaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53WqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53W6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53XKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53XaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53XqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53X6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53YKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53YaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53YqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53Y6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53ZKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53ZaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53ZqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53Z6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53aKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53aaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53aqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53a6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53bKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53baetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53bqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53b6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH53cKetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_6_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53caetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53cqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53c6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53dKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53daetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53dqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53d6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53eKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53eaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53eqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53e6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53fKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53faetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53fqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53f6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53gKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53gaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53gqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53g6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53hKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53haetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53hqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53h6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53iKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53iaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH53iqetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_7_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53i6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53jKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53jaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53jqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53j6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53kKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53kaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53kqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53k6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53lKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53laetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53lqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53l6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53mKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53maetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53mqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53m6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53nKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53naetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53nqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53n6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53oKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53oaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53oqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53o6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH53pKetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_8_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53paetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53pqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53p6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53qKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53qaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53qqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53q6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53rKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53raetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53rqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53r6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53sKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53saetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53sqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53s6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53tKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53taetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53tqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53t6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53uKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53uaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53uqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53u6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53vKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH53vaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH53vqetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_9_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53v6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53wKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53waetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53wqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53w6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53xKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53xaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53xqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53x6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53yKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53yaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53yqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53y6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53zKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53zaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53zqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH53z6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH530KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH530aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH530qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5306etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH531KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH531aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH531qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5316etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH532KetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_10_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH532aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH532qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5326etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH533KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH533aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH533qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5336etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH534KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH534aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH534qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5346etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH535KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH535aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH535qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5356etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH536KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH536aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH536qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5366etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH537KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH537aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH537qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5376etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH538KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH538aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH538qetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_11_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5386etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH539KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH539aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH539qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5396etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53-KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53-aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53-qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53-6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53_KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53_aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53_qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH53_6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54AKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54AaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54AqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54A6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54BKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54BaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54BqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54B6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54CKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54CaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54CqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54C6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gH54DKetEeSgvuE9XIvLDQ" name="CopyOf_Package1_5">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54DaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54DqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54D6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54EKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54EaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54EqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54E6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54FKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54FaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54FqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54F6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54GKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54GaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54GqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54G6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54HKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54HaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54HqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54H6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54IKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54IaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54IqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54I6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54JKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54JaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54JqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH54J6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH54KKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH54KaetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH54KqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH54K6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54LKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54LaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54LqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54L6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54MKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54MaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54MqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54M6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54NKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54NaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54NqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54N6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54OKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54OaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54OqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54O6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54PKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54PaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54PqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54P6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54QKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54QaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54QqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54Q6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54RKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54RaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54RqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54R6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54SKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54SaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54SqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54S6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54TKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54TaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54TqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54T6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54UKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54UaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54UqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54U6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54VKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54VaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54VqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54V6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54WKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54WaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54WqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54W6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54XKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54XaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54XqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54X6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54YKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54YaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54YqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54Y6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54ZKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54ZaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54ZqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54Z6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54aKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54aaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54aqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54a6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54bKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54baetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54bqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54b6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54cKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54caetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54cqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54c6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54dKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54daetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54dqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54d6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54eKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54eaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54eqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54e6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54fKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54faetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54fqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54f6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54gKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54gaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54gqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54g6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54hKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54haetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54hqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54h6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54iKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54iaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54iqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54i6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54jKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54jaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54jqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54j6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54kKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54kaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54kqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54k6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54lKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54laetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54lqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54l6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54mKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54maetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54mqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54m6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54nKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54naetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54nqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54n6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54oKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54oaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54oqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54o6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54pKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54paetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54pqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54p6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54qKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54qaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54qqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54q6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54rKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54raetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54rqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54r6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54sKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54saetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54sqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54s6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54tKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54taetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54tqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54t6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54uKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54uaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54uqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54u6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54vKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54vaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54vqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54v6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54wKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54waetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54wqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54w6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54xKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54xaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54xqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54x6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54yKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54yaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54yqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54y6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54zKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54zaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54zqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54z6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH540KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH540aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH540qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5406etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH541KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH541aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH541qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5416etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH542KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH542aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH542qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5426etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH543KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH543aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH543qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5436etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH544KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH544aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH544qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5446etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH545KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH545aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH545qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5456etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH546KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH546aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH546qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5466etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH547KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH547aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH547qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5476etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH548KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH548aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH548qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5486etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH549KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH549aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH549qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5496etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54-KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH54-aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54-qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH54-6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH54_KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54_aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54_qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH54_6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55AKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55AaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55AqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55A6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55BKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55BaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55BqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55B6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55CKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55CaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55CqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55C6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55DKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55DaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55DqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55D6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55EKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55EaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55EqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55E6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55FKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55FaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH55FqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55F6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55GKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55GaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55GqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55G6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55HKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55HaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55HqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55H6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55IKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55IaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55IqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55I6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55JKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55JaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55JqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55J6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55KKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55KaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55KqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55K6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55LKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55LaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55LqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55L6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH55MKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55MaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55MqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55M6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55NKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55NaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55NqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55N6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55OKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55OaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55OqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55O6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55PKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55PaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55PqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55P6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55QKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55QaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55QqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55Q6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55RKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55RaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55RqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55R6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55SKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55SaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gH55SqetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_1_2">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH55S6etEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55TKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55TaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55TqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55T6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55UKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55UaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55UqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55U6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55VKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55VaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55VqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55V6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55WKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55WaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55WqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55W6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55XKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55XaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55XqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55X6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55YKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55YaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55YqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55Y6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55ZKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH55ZaetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH55ZqetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH55Z6etEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH55aKetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH55aaetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH55aqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55a6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55bKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55baetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55bqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55b6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55cKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55caetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55cqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55c6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55dKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55daetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55dqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55d6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55eKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55eaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55eqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55e6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55fKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55faetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55fqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55f6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55gKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55gaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55gqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55g6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH55hKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55haetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55hqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55h6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55iKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55iaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55iqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55i6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55jKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55jaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55jqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55j6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55kKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55kaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55kqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55k6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55lKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55laetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55lqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55l6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55mKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55maetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55mqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55m6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55nKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55naetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH55nqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55n6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55oKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55oaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55oqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55o6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55pKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55paetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55pqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55p6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55qKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55qaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55qqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55q6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55rKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55raetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55rqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55r6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55sKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55saetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55sqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55s6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55tKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55taetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55tqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH55t6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH55uKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55uaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55uqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55u6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55vKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55vaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55vqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55v6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55wKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55waetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55wqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55w6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55xKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55xaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55xqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55x6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55yKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55yaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55yqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55y6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55zKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55zaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55zqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55z6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH550KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH550aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH550qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5506etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH551KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH551aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH551qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5516etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH552KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH552aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH552qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5526etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH553KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH553aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH553qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5536etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH554KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH554aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH554qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5546etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH555KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH555aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH555qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5556etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH556KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH556aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH556qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5566etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH557KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH557aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH557qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5576etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH558KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH558aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH558qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5586etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH559KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH559aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH559qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5596etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55-KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH55-aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55-qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55-6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55_KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55_aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55_qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH55_6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56AKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56AaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56AqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56A6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56BKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56BaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH56BqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56B6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56CKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56CaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56CqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56C6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56DKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56DaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56DqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56D6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56EKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56EaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56EqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56E6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56FKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56FaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56FqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56F6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56GKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56GaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56GqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56G6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56HKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56HaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56HqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56H6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH56IKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56IaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56IqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56I6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56JKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56JaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56JqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56J6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56KKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56KaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56KqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56K6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56LKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56LaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56LqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56L6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56MKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56MaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56MqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56M6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56NKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56NaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56NqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56N6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56OKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56OaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH56OqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56O6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56PKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56PaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56PqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56P6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56QKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56QaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56QqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56Q6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56RKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56RaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56RqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56R6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56SKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56SaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56SqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56S6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56TKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56TaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56TqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56T6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56UKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56UaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56UqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56U6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH56VKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56VaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56VqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56V6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56WKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56WaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56WqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56W6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56XKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56XaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56XqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56X6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56YKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56YaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56YqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56Y6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56ZKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56ZaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56ZqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56Z6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56aKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56aaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56aqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56a6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56bKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56baetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH56bqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56b6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56cKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56caetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56cqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56c6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56dKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56daetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56dqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56d6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56eKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56eaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56eqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56e6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56fKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56faetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56fqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56f6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56gKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56gaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56gqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56g6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56hKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56haetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56hqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56h6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gH56iKetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_2_2">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH56iaetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56iqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56i6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56jKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56jaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56jqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56j6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56kKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56kaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56kqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56k6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56lKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56laetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56lqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56l6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56mKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56maetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56mqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56m6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56nKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56naetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56nqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56n6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56oKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56oaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56oqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH56o6etEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH56pKetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH56paetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH56pqetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH56p6etEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH56qKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56qaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56qqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56q6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56rKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56raetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56rqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56r6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56sKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56saetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56sqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56s6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56tKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56taetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56tqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56t6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56uKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56uaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56uqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56u6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56vKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56vaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56vqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH56v6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56wKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH56waetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH56wqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56w6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56xKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56xaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56xqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56x6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56yKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56yaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56yqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56y6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56zKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56zaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56zqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56z6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH560KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH560aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH560qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5606etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH561KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH561aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH561qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5616etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH562KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH562aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH562qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5626etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH563KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH563aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH563qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5636etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH564KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH564aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH564qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5646etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH565KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH565aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH565qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5656etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH566KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH566aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH566qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5666etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH567KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH567aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH567qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5676etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH568KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH568aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH568qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5686etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH569KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH569aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH569qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5696etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56-KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56-aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56-qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56-6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56_KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56_aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56_qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH56_6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57AKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57AaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57AqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57A6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57BKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57BaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57BqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57B6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57CKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57CaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57CqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57C6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57DKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57DaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57DqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57D6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH57EKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57EaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57EqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57E6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57FKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57FaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57FqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57F6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57GKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57GaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57GqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57G6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57HKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57HaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57HqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57H6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57IKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57IaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57IqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57I6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57JKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57JaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57JqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57J6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57KKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57KaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH57KqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57K6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57LKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57LaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57LqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57L6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57MKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57MaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57MqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57M6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57NKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57NaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57NqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57N6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57OKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57OaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57OqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57O6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57PKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57PaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57PqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57P6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57QKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57QaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57QqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57Q6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH57RKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57RaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57RqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57R6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57SKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57SaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57SqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57S6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57TKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57TaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57TqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57T6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57UKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57UaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57UqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57U6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57VKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57VaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57VqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57V6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57WKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57WaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57WqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57W6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57XKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57XaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH57XqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57X6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57YKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57YaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57YqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57Y6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57ZKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57ZaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57ZqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57Z6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57aKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57aaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57aqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57a6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57bKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57baetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57bqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57b6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57cKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57caetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57cqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57c6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57dKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57daetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57dqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57d6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH57eKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57eaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57eqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57e6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57fKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57faetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57fqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57f6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57gKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57gaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57gqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57g6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57hKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57haetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57hqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57h6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57iKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57iaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57iqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57i6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57jKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57jaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57jqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57j6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57kKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57kaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH57kqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57k6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57lKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57laetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57lqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57l6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57mKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57maetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57mqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57m6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57nKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57naetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57nqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57n6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57oKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57oaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57oqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57o6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57pKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57paetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57pqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57p6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57qKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57qaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57qqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57q6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH57rKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57raetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57rqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57r6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57sKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57saetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57sqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57s6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57tKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57taetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57tqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57t6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57uKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57uaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57uqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57u6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57vKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57vaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57vqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57v6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57wKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57waetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57wqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57w6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57xKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57xaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gH57xqetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_3_2">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH57x6etEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57yKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57yaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57yqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57y6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57zKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57zaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57zqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH57z6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH570KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH570aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH570qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5706etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH571KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH571aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH571qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5716etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH572KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH572aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH572qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5726etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH573KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH573aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH573qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5736etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH574KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH574aetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH574qetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5746etEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH575KetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH575aetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH575qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5756etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH576KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH576aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH576qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5766etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH577KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH577aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH577qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5776etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH578KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH578aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH578qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5786etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH579KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH579aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH579qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5796etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57-KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57-aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57-qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57-6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57_KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH57_aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57_qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH57_6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH58AKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58AaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58AqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58A6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58BKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58BaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58BqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58B6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58CKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58CaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58CqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58C6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58DKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58DaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58DqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58D6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58EKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58EaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58EqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58E6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58FKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58FaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58FqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58F6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58GKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58GaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH58GqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58G6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58HKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58HaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58HqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58H6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58IKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58IaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58IqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58I6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58JKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58JaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58JqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58J6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58KKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58KaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58KqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58K6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58LKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58LaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58LqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58L6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58MKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58MaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58MqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58M6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH58NKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58NaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58NqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58N6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58OKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58OaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58OqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58O6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58PKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58PaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58PqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58P6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58QKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58QaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58QqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58Q6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58RKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58RaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58RqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58R6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58SKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58SaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58SqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58S6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58TKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58TaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH58TqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58T6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58UKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58UaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58UqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58U6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58VKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58VaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58VqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58V6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58WKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58WaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58WqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58W6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58XKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58XaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58XqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58X6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58YKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58YaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58YqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58Y6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58ZKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58ZaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58ZqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58Z6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH58aKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58aaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58aqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58a6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58bKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58baetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58bqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58b6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58cKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58caetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58cqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58c6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58dKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58daetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58dqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58d6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58eKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58eaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58eqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58e6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58fKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58faetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58fqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58f6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58gKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58gaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH58gqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58g6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58hKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58haetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58hqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58h6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58iKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58iaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58iqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58i6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58jKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58jaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58jqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58j6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58kKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58kaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58kqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58k6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58lKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58laetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58lqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58l6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58mKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58maetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58mqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58m6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH58nKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58naetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58nqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58n6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58oKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58oaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58oqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58o6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58pKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58paetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58pqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58p6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58qKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58qaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58qqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58q6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58rKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58raetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58rqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58r6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58sKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58saetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58sqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58s6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58tKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58taetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH58tqetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58t6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58uKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58uaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58uqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58u6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58vKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58vaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58vqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58v6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58wKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58waetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58wqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH58w6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58xKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58xaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58xqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58x6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58yKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58yaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58yqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58y6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58zKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58zaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58zqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH58z6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH580KetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH580aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH580qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5806etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH581KetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH581aetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH581qetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5816etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH582KetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH582aetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH582qetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5826etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH583KetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH583aetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH583qetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5836etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH584KetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH584aetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH584qetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5846etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH585KetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH585aetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH585qetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5856etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH586KetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH586aetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH586qetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5866etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH587KetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH587aetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH587qetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5876etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH588KetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH588aetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH588qetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5886etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH589KetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH589aetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH589qetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5896etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58-KetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58-aetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58-qetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58-6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58_KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58_aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58_qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH58_6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59AKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59AaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59AqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59A6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH59BKetEeSgvuE9XIvLDQ" name="CopyOf_Class1_14">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59BaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59BqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59B6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59CKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59CaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59CqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59C6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59DKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59DaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59DqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59D6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59EKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59EaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59EqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59E6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59FKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59FaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59FqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59F6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59GKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59GaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59GqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59G6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59HKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59HaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH59HqetEeSgvuE9XIvLDQ" name="CopyOf_Enumeration1_3">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH59H6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH59IKetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH59IaetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH59IqetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH59I6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59JKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59JaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59JqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59J6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59KKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59KaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59KqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59K6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59LKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59LaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59LqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59L6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59MKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59MaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59MqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59M6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59NKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59NaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59NqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59N6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59OKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59OaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59OqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59O6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59PKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH59PaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_2_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59PqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59P6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59QKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59QaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59QqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59Q6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59RKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59RaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59RqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59R6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59SKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59SaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59SqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59S6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59TKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59TaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59TqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59T6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59UKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59UaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59UqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59U6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59VKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59VaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59VqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH59V6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_3_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59WKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59WaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59WqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59W6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59XKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59XaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59XqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59X6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59YKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59YaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59YqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59Y6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59ZKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59ZaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59ZqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59Z6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59aKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59aaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59aqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59a6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59bKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59baetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59bqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59b6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59cKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH59caetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_4_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59cqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59c6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59dKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59daetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59dqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59d6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59eKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59eaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59eqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59e6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59fKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59faetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59fqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59f6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59gKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59gaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59gqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59g6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59hKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59haetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59hqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59h6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59iKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59iaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59iqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH59i6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_5_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59jKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59jaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59jqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59j6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59kKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59kaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59kqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59k6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59lKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59laetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59lqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59l6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59mKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59maetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59mqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59m6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59nKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59naetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59nqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59n6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59oKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59oaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59oqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59o6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59pKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH59paetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_6_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59pqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59p6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59qKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59qaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59qqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59q6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59rKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59raetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59rqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59r6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59sKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59saetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59sqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59s6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59tKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59taetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59tqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59t6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59uKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59uaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59uqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59u6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59vKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59vaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH59vqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH59v6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_7_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59wKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59waetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59wqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59w6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59xKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59xaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59xqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59x6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59yKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59yaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59yqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59y6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59zKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59zaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59zqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH59z6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH590KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH590aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH590qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5906etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH591KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH591aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH591qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5916etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH592KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH592aetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_8_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH592qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5926etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH593KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH593aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH593qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5936etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH594KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH594aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH594qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5946etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH595KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH595aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH595qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5956etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH596KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH596aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH596qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5966etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH597KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH597aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH597qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5976etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH598KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH598aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH598qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5986etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_9_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH599KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH599aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH599qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5996etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59-KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59-aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59-qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59-6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59_KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59_aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59_qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH59_6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-AKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-AaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-AqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-A6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-BKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-BaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-BqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-B6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-CKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-CaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-CqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-C6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-DKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-DaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_10_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-DqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-D6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-EKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-EaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-EqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-E6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-FKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-FaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-FqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-F6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-GKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-GaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-GqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-G6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-HKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-HaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-HqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-H6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-IKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-IaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-IqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-I6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-JKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-JaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-JqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-J6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Class1_11_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-KKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-KaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-KqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-K6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-LKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-LaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-LqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-L6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-MKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-MaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-MqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-M6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-NKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-NaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-NqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-N6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-OKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-OaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-OqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-O6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-PKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-PaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-PqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-P6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-QKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gH5-QaetEeSgvuE9XIvLDQ" name="CopyOf_Package1_6">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-QqetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-Q6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-RKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-RaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-RqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-R6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-SKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-SaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-SqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-S6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-TKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-TaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-TqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-T6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-UKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-UaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-UqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-U6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-VKetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-VaetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-VqetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-V6etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-WKetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-WaetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-WqetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-W6etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH5-XKetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5-XaetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5-XqetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5-X6etEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5-YKetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-YaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-YqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-Y6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-ZKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-ZaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-ZqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-Z6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-aKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-aaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-aqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-a6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-bKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-baetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-bqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-b6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-cKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-caetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-cqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-c6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-dKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-daetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-dqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-d6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-eKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-eaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-eqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-e6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-fKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-faetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-fqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-f6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-gKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-gaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-gqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-g6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-hKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-haetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-hqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-h6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-iKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-iaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-iqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-i6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-jKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-jaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-jqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-j6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-kKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-kaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-kqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-k6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-lKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-laetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-lqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-l6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-mKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-maetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-mqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-m6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-nKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-naetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-nqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-n6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-oKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-oaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-oqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-o6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-pKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-paetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-pqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-p6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-qKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-qaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-qqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-q6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-rKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-raetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-rqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-r6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-sKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-saetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-sqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-s6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-tKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-taetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-tqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-t6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-uKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-uaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-uqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-u6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-vKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-vaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-vqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-v6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-wKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-waetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-wqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-w6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-xKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-xaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-xqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-x6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-yKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-yaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-yqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-y6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-zKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-zaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-zqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-z6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-0KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-0aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-0qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-06etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-1KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-1aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-1qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-16etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-2KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-2aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-2qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-26etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-3KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-3aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-3qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-36etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-4KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-4aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-4qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-46etEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-5KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-5aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-5qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-56etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-6KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-6aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-6qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-66etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-7KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-7aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-7qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-76etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-8KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-8aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-8qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-86etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-9KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-9aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-9qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5-96etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5--KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5--aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5--qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5--6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5-_KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5-_aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-_qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5-_6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_AKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_AaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_AqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_A6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_BKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_BaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_BqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_B6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_CKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_CaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_CqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_C6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_DKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_DaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_DqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_D6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_EKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_EaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_EqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_E6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_FKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_FaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_FqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_F6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_GKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_GaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_GqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_G6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_HKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_HaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_HqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_H6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_IKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_IaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_IqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_I6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_JKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_JaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_JqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_J6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_KKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_KaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_KqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_K6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_LKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_LaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_LqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_L6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_MKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_MaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_MqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_M6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_NKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_NaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_NqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_N6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_OKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_OaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_OqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_O6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_PKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_PaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_PqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_P6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_QKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_QaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_QqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_Q6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_RKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_RaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_RqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_R6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_SKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_SaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_SqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_S6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_TKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_TaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_TqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_T6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_UKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_UaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_UqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_U6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_VKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_VaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_VqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_V6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_WKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_WaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_WqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_W6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_XKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_XaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_XqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_X6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_YKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_YaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_YqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_Y6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_ZKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_ZaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_ZqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_Z6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_aKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_aaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_aqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_a6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_bKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_baetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_bqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_b6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_cKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_caetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_cqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_c6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_dKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_daetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_dqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_d6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_eKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_eaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_eqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_e6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_fKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_faetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_fqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gH5_f6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_1_3">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_gKetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_gaetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_gqetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_g6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_hKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_haetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_hqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_h6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_iKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_iaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_iqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_i6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_jKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_jaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_jqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_j6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_kKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_kaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_kqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_k6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_lKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_laetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_lqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_l6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_mKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_maetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH5_mqetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5_m6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5_nKetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5_naetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH5_nqetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_n6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_oKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_oaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_oqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_o6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_pKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_paetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_pqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_p6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_qKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_qaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_qqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_q6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_rKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_raetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_rqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_r6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_sKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_saetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_sqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_s6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_tKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_taetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_tqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_t6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_uKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_uaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_uqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_u6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_vKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_vaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_vqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_v6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_wKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_waetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_wqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_w6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_xKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_xaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_xqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_x6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_yKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_yaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_yqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_y6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_zKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_zaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_zqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_z6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_0KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_0aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_0qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_06etEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_1KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_1aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_1qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_16etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_2KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_2aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_2qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_26etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_3KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_3aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_3qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_36etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_4KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_4aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_4qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_46etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_5KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_5aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_5qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_56etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_6KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_6aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_6qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_66etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH5_7KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH5_7aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_7qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_76etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_8KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_8aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_8qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_86etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_9KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_9aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_9qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_96etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_-KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_-aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH5_-qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5_-6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5__KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5__aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5__qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH5__6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AAKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AAaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AAqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AA6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ABKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6ABaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6ABqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6AB6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ACKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ACaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ACqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AC6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ADKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ADaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ADqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AD6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AEKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AEaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AEqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AE6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AFKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AFaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AFqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AF6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AGKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AGaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AGqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AG6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AHKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AHaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AHqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AH6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AIKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6AIaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AIqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AI6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AJKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AJaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AJqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AJ6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AKKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AKaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AKqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AK6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ALKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ALaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ALqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AL6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AMKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AMaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AMqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AM6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ANKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ANaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ANqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AN6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AOKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AOaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AOqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6AO6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6APKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6APaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6APqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AP6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AQKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AQaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AQqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AQ6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ARKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ARaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ARqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AR6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ASKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ASaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ASqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AS6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ATKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ATaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ATqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AT6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AUKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AUaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AUqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AU6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AVKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6AVaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AVqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AV6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AWKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AWaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AWqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AW6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AXKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AXaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AXqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AX6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AYKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AYaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AYqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AY6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AZKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AZaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AZqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AZ6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AaKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AaaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AaqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Aa6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AbKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AbaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AbqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6Ab6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AcKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AcaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AcqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ac6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AdKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AdaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AdqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ad6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AeKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AeaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AeqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ae6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AfKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AfaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AfqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Af6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AgKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AgaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AgqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Ag6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AhKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AhaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AhqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6Ah6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AiKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6AiaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AiqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ai6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AjKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AjaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AjqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Aj6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AkKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AkaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AkqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ak6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AlKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AlaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AlqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Al6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AmKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AmaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AmqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Am6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AnKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AnaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AnqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6An6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AoKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AoaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AoqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6Ao6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ApKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ApaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ApqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ap6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AqKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AqaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AqqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Aq6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ArKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AraetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ArqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ar6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AsKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AsaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AsqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6As6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AtKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AtaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AtqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6At6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AuKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AuaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AuqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6Au6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6AvKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gH6AvaetEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_2_3">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6AvqetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Av6etEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AwKetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AwaetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AwqetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Aw6etEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AxKetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AxaetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AxqetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ax6etEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AyKetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AyaetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6AyqetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ay6etEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AzKetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AzaetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6AzqetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Az6etEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A0KetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A0aetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A0qetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A06etEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A1KetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A1aetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6A1qetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6A16etEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH6A2KetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH6A2aetEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH6A2qetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH6A26etEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH6A3KetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6A3aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A3qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A36etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A4KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A4aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A4qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A46etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A5KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A5aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A5qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A56etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A6KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A6aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A6qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A66etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A7KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A7aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A7qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A76etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A8KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A8aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A8qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A86etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6A9KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6A9aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6A9qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6A96etEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A-KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A-aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A-qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A-6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A_KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A_aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A_qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6A_6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BAKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BAaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BAqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BA6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BBKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BBaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BBqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BB6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BCKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BCaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BCqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BC6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BDKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BDaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BDqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BD6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BEKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6BEaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BEqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BE6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BFKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BFaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BFqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BF6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BGKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BGaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BGqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BG6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BHKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BHaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BHqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BH6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BIKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BIaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BIqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BI6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BJKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BJaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BJqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BJ6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BKKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BKaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BKqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6BK6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BLKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BLaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BLqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BL6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BMKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BMaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BMqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BM6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BNKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BNaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BNqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BN6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BOKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BOaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BOqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BO6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BPKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BPaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BPqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BP6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BQKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BQaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BQqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BQ6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BRKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6BRaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BRqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BR6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BSKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BSaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BSqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BS6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BTKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BTaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BTqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BT6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BUKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BUaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BUqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BU6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BVKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BVaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BVqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BV6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BWKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BWaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BWqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BW6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BXKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BXaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BXqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6BX6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BYKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BYaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BYqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BY6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BZKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BZaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BZqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BZ6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BaKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BaaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BaqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ba6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BbKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BbaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BbqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bb6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BcKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BcaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BcqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bc6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BdKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BdaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BdqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6Bd6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BeKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6BeaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BeqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Be6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BfKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BfaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BfqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Bf6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BgKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BgaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BgqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Bg6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BhKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BhaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BhqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bh6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BiKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BiaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BiqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bi6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BjKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BjaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BjqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bj6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BkKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BkaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BkqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6Bk6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BlKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BlaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BlqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Bl6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BmKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BmaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BmqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Bm6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BnKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BnaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BnqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Bn6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BoKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BoaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BoqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bo6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BpKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BpaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BpqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bp6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BqKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BqaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BqqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6Bq6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BrKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6BraetEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BrqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Br6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BsKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BsaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BsqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Bs6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BtKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BtaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BtqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Bt6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BuKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BuaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BuqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bu6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BvKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BvaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BvqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bv6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BwKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BwaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BwqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Bw6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6BxKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BxaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6BxqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6Bx6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ByKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ByaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ByqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6By6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BzKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BzaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6BzqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Bz6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B0KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B0aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B0qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B06etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B1KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B1aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B1qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B16etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B2KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B2aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B2qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B26etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B3KetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B3aetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B3qetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6B36etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6B4KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6B4aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B4qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B46etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B5KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B5aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B5qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B56etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B6KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B6aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B6qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B66etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B7KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B7aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B7qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B76etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B8KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B8aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B8qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B86etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B9KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B9aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B9qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B96etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6B-KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6B-aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6B-qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gH6B-6etEeSgvuE9XIvLDQ" name="CopyOf_CopyOf_Package1_3_3">
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6B_KetEeSgvuE9XIvLDQ" name="Class1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B_aetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B_qetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6B_6etEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CAKetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CAaetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CAqetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CA6etEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CBKetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CBaetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CBqetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CB6etEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CCKetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CCaetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CCqetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CC6etEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CDKetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CDaetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CDqetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CD6etEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CEKetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CEaetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CEqetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CE6etEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CFKetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CFaetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_gH6CFqetEeSgvuE9XIvLDQ" name="Enumeration1">
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH6CF6etEeSgvuE9XIvLDQ" name="EnumerationLiteral1"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH6CGKetEeSgvuE9XIvLDQ" name="EnumerationLiteral2"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH6CGaetEeSgvuE9XIvLDQ" name="EnumerationLiteral3"/>
+ <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_gH6CGqetEeSgvuE9XIvLDQ" name="EnumerationLiteral4"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6CG6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_1">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CHKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CHaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CHqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CH6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CIKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CIaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CIqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CI6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CJKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CJaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CJqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CJ6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CKKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CKaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CKqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CK6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CLKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CLaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CLqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CL6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CMKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CMaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CMqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CM6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CNKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6CNaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_2">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CNqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CN6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6COKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6COaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6COqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CO6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CPKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CPaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CPqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CP6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CQKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CQaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CQqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CQ6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CRKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CRaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CRqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CR6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CSKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CSaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CSqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CS6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CTKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CTaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CTqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6CT6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_3">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CUKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CUaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CUqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CU6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CVKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CVaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CVqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CV6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CWKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CWaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CWqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CW6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CXKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CXaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CXqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CX6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CYKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CYaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CYqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CY6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CZKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CZaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CZqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CZ6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CaKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6CaaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_4">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CaqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ca6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CbKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CbaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CbqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Cb6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CcKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CcaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CcqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Cc6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CdKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CdaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CdqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Cd6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CeKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CeaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CeqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Ce6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CfKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CfaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CfqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Cf6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CgKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CgaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CgqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6Cg6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_5">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ChKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ChaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6ChqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ch6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CiKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CiaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CiqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Ci6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CjKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CjaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CjqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Cj6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CkKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CkaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CkqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Ck6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ClKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ClaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6ClqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Cl6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CmKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CmaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CmqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6Cm6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CnKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6CnaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_6">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CnqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Cn6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CoKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CoaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CoqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Co6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CpKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CpaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CpqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Cp6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CqKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CqaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CqqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Cq6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CrKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CraetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CrqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Cr6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CsKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CsaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CsqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Cs6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CtKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CtaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6CtqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6Ct6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_7">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CuKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CuaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CuqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Cu6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CvKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CvaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CvqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Cv6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CwKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CwaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CwqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6Cw6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6CxKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CxaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CxqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Cx6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CyKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CyaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CyqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6Cy6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CzKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CzaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6CzqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6Cz6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6C0KetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6C0aetEeSgvuE9XIvLDQ" name="CopyOf_Class1_8">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C0qetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C06etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C1KetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C1aetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C1qetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C16etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C2KetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C2aetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C2qetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C26etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C3KetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C3aetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C3qetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C36etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C4KetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C4aetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C4qetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C46etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C5KetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C5aetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C5qetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C56etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C6KetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6C6aetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6C6qetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6C66etEeSgvuE9XIvLDQ" name="CopyOf_Class1_9">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C7KetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C7aetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C7qetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C76etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C8KetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C8aetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C8qetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C86etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C9KetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C9aetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C9qetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C96etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6C-KetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C-aetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C-qetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C-6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C_KetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C_aetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C_qetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6C_6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DAKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DAaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DAqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6DA6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6DBKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6DBaetEeSgvuE9XIvLDQ" name="CopyOf_Class1_10">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DBqetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DB6etEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DCKetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DCaetEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DCqetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DC6etEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DDKetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DDaetEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DDqetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DD6etEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DEKetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DEaetEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DEqetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DE6etEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DFKetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DFaetEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DFqetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DF6etEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DGKetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DGaetEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DGqetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DG6etEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DHKetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6DHaetEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6DHqetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_gH6DH6etEeSgvuE9XIvLDQ" name="CopyOf_Class1_11">
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DIKetEeSgvuE9XIvLDQ" name="Attribute1"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DIaetEeSgvuE9XIvLDQ" name="Attribute2"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DIqetEeSgvuE9XIvLDQ" name="Attribute3"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DI6etEeSgvuE9XIvLDQ" name="Attribute4"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DJKetEeSgvuE9XIvLDQ" name="Attribute5"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DJaetEeSgvuE9XIvLDQ" name="Attribute6"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DJqetEeSgvuE9XIvLDQ" name="Attribute7"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DJ6etEeSgvuE9XIvLDQ" name="Attribute8"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DKKetEeSgvuE9XIvLDQ" name="Attribute9"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DKaetEeSgvuE9XIvLDQ" name="Attribute10"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DKqetEeSgvuE9XIvLDQ" name="Attribute11"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DK6etEeSgvuE9XIvLDQ" name="Attribute12"/>
+ <ownedAttribute xmi:type="uml:Property" xmi:id="_gH6DLKetEeSgvuE9XIvLDQ" name="Attribute13"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DLaetEeSgvuE9XIvLDQ" name="Operation1"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DLqetEeSgvuE9XIvLDQ" name="Operation2"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DL6etEeSgvuE9XIvLDQ" name="Operation3"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DMKetEeSgvuE9XIvLDQ" name="Operation4"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DMaetEeSgvuE9XIvLDQ" name="Operation5"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DMqetEeSgvuE9XIvLDQ" name="Operation6"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DM6etEeSgvuE9XIvLDQ" name="Operation7"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DNKetEeSgvuE9XIvLDQ" name="Operation8"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DNaetEeSgvuE9XIvLDQ" name="Operation9"/>
+ <ownedOperation xmi:type="uml:Operation" xmi:id="_gH6DNqetEeSgvuE9XIvLDQ" name="Operation10"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6DN6etEeSgvuE9XIvLDQ" name="DataType1"/>
+ <nestedClassifier xmi:type="uml:DataType" xmi:id="_gH6DOKetEeSgvuE9XIvLDQ" name="DataType2"/>
+ </packagedElement>
+ </packagedElement>
+ </packagedElement>
+</uml:Model>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/customProfile/ProfileUpdates.epx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/customProfile/ProfileUpdates.epx
new file mode 100644
index 0000000..3d265a0
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/customProfile/ProfileUpdates.epx
@@ -0,0 +1,562 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.profile" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<uml:Profile 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:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_vfjmUJdJEeSUisRPbTY3hA" name="ProfileUpdates" metamodelReference="_vlvt4JdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_vmdfkJdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <contents xmi:type="ecore:EPackage" xmi:id="_39UnYZdKEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_39UnYJdKEeSUisRPbTY3hA/8" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_39UnYpdKEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_39UnY5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_39UnZJdKEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_39UnZpdKEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:id="_39UnZ5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_39UnaJdKEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_39UnapdKEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_39Una5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_39UnbJdKEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_39UnbpdKEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_39UncJdKEeSUisRPbTY3hA" name="Stereotype4">
+ <eAnnotations xmi:id="_39UncZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_I9LQMJdKEeSUisRPbTY3hA"/>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_39UncpdKEeSUisRPbTY3hA" name="Stereotype5" eSuperTypes="_39UnZpdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_39Unc5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_JC-WMJdKEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_39UndJdKEeSUisRPbTY3hA" name="attribute1" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_39UndpdKEeSUisRPbTY3hA" name="attribute2" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_39UneJdKEeSUisRPbTY3hA" name="attribute3" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_jggk8ZdKEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_jggk8JdKEeSUisRPbTY3hA/7" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_jggk8pdKEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_jggk85dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_jggk9JdKEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_jggk9pdKEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:id="_jggk95dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_jggk-JdKEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_jggk-pdKEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_jggk-5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_jggk_JdKEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_jggk_pdKEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_jgglAJdKEeSUisRPbTY3hA" name="Stereotype4">
+ <eAnnotations xmi:id="_jgglAZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_I9LQMJdKEeSUisRPbTY3hA"/>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_jgglApdKEeSUisRPbTY3hA" name="Stereotype5">
+ <eAnnotations xmi:id="_jgglA5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_JC-WMJdKEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_jgglBJdKEeSUisRPbTY3hA" name="attribute1" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_jgglBpdKEeSUisRPbTY3hA" name="attribute2" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_jgglCJdKEeSUisRPbTY3hA" name="attribute3" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_guH84ZdKEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_guH84JdKEeSUisRPbTY3hA/6" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_guH84pdKEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_guH845dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_guH85JdKEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_guH85pdKEeSUisRPbTY3hA" name="S2">
+ <eAnnotations xmi:id="_guH855dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_guH86JdKEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_guH86pdKEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_guH865dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_guH87JdKEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_guH87pdKEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_guH88JdKEeSUisRPbTY3hA" name="Stereotype4">
+ <eAnnotations xmi:id="_guH88ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_I9LQMJdKEeSUisRPbTY3hA"/>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_guH88pdKEeSUisRPbTY3hA" name="S5">
+ <eAnnotations xmi:id="_guH885dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_JC-WMJdKEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_guH89JdKEeSUisRPbTY3hA" name="attribute1" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_guH89pdKEeSUisRPbTY3hA" name="attribute2" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_guH8-JdKEeSUisRPbTY3hA" name="attribute3" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_ensb4ZdKEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_ensb4JdKEeSUisRPbTY3hA/5" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_ensb4pdKEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_ensb45dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_ensb5JdKEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_ensb5pdKEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:id="_ensb55dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_ensb6JdKEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_ensb6pdKEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_ensb65dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_ensb7JdKEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_ensb7pdKEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_ensb8JdKEeSUisRPbTY3hA" name="Stereotype4">
+ <eAnnotations xmi:id="_ensb8ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_I9LQMJdKEeSUisRPbTY3hA"/>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_ensb8pdKEeSUisRPbTY3hA" name="Stereotype5">
+ <eAnnotations xmi:id="_ensb85dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_JC-WMJdKEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_ensb9JdKEeSUisRPbTY3hA" name="attribute1" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_ensb9pdKEeSUisRPbTY3hA" name="attribute2" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_ensb-JdKEeSUisRPbTY3hA" name="attribute3" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_Edh1EZdKEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_Edh1EJdKEeSUisRPbTY3hA/4" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Edh1EpdKEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_Edh1E5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Edh1FJdKEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Edh1FpdKEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:id="_Edh1F5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Edh1GJdKEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_Edh1GpdKEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_Edh1G5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Edh1HJdKEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_Edh1HpdKEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_BVwy4ZdKEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_BVwy4JdKEeSUisRPbTY3hA/3" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_BVxZ8JdKEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_BVxZ8ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_BVxZ8pdKEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_BVxZ9JdKEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:id="_BVxZ9ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_BVxZ9pdKEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_BVxZ-JdKEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_BVxZ-ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_BVxZ-pdKEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_BVxZ_JdKEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_40zecZdJEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_40zecJdJEeSUisRPbTY3hA/2" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_40zecpdJEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_40zec5dJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_40zedJdJEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_40zedpdJEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:id="_40zed5dJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_40zeeJdJEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_40zeepdJEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_40zefJdJEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_40zefZdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_40zefpdJEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_4WLowJdJEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_4WLBsJdJEeSUisRPbTY3hA/1" nsPrefix="ProfileUpdates">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_4WLowZdJEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_4WLowpdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_x-fG4JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_4WLow5dJEeSUisRPbTY3hA" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_4WLoxZdJEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:id="_4WLoxpdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yDlCQJdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_4WLox5dJEeSUisRPbTY3hA" name="base_Package" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Package"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_4WLoyZdJEeSUisRPbTY3hA" name="base_Property" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Property"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_4WLoy5dJEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_4WLozJdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_yJKF0JdJEeSUisRPbTY3hA"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_4WLozZdJEeSUisRPbTY3hA" name="base_Interface" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Interface"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_vmdfkZdJEeSUisRPbTY3hA" name="ProfileUpdates" nsURI="http:///schemas/ProfileUpdates/_vmc4gJdJEeSUisRPbTY3hA/0" nsPrefix="ProfileUpdates"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_w5ZHEJdJEeSUisRPbTY3hA" source="uml2.profile.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_w5ZuIJdJEeSUisRPbTY3hA" type="Class" name="ClassDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_x_8fcJdJEeSUisRPbTY3hA" element="_x-fG4JdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yASdsJdJEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_yASdsZdJEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yATEwJdJEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yATEwZdJEeSUisRPbTY3hA" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yATr0JdJEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yATr0ZdJEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yAU58JdJEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yAstYJdJEeSUisRPbTY3hA" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_x_8fcZdJEeSUisRPbTY3hA" x="2904" y="7260"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_yDnegJdJEeSUisRPbTY3hA" element="_yDlCQJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yDoFkZdJEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_yDoFkpdJEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yDosoJdJEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yDosoZdJEeSUisRPbTY3hA" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yDpTsJdJEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yDpTsZdJEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yDp6wJdJEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yDp6wZdJEeSUisRPbTY3hA" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yDoFkJdJEeSUisRPbTY3hA" x="8580" y="7128"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_yJMiEJdJEeSUisRPbTY3hA" element="_yJKF0JdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yJNJIJdJEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_yJNJIZdJEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yJNwMJdJEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yJNwMZdJEeSUisRPbTY3hA" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yJNwMpdJEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yJNwM5dJEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yJOXQJdJEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yJOXQZdJEeSUisRPbTY3hA" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yJMiEZdJEeSUisRPbTY3hA" x="16104" y="7128"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_5kX6MJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5kYhQJdJEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_5kYhQZdJEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5kZIUJdJEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5kZIUZdJEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5kZvYJdJEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5kZvYZdJEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5kaWcJdJEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5kaWcZdJEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_5kcysJdJEeSUisRPbTY3hA" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5kX6MZdJEeSUisRPbTY3hA" x="14388" y="1188"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_9RjWkJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9Rj9oJdJEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_9Rj9oZdJEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9RkksJdJEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9RkksZdJEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9RkkspdJEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9RlLwJdJEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9RlLwZdJEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9Rly0JdJEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_9Rly0ZdJEeSUisRPbTY3hA" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interface"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9RjWkZdJEeSUisRPbTY3hA" x="7920" y="1320"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_96T_sJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_96UmwJdJEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_96UmwZdJEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_96UmwpdJEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_96Umw5dJEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_96VN0JdJEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_96VN0ZdJEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_96VN0pdJEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_96VN05dJEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_96V04JdJEeSUisRPbTY3hA" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Package"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_96T_sZdJEeSUisRPbTY3hA" x="2508" y="1452" width="3515" height="2055"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="__NrsEJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="__NsTIJdJEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="__NsTIZdJEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="__NsTIpdJEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="__NsTI5dJEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="__Ns6MJdJEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="__Ns6MZdJEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="__Ns6MpdJEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="__NthQJdJEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="__NthQZdJEeSUisRPbTY3hA" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="__NrsEZdJEeSUisRPbTY3hA" x="20592" y="1188" width="4547" height="1022"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_I9eLIJdKEeSUisRPbTY3hA" element="_I9LQMJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_I9eyMZdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_I9eyMpdKEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_I9fZQJdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_I9fZQZdKEeSUisRPbTY3hA" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_I9fZQpdKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_I9fZQ5dKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_I9fZRJdKEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_I9gAUJdKEeSUisRPbTY3hA" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_I9eyMJdKEeSUisRPbTY3hA" x="5476" y="10133"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_JDFD4JdKEeSUisRPbTY3hA" element="_JC-WMJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_JDFq8JdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_JDFq8ZdKEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_JDFq8pdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_JDGSAJdKEeSUisRPbTY3hA" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_JDGSAZdKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_JDGSApdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_JDGSA5dKEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_JDG5EJdKEeSUisRPbTY3hA" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JDFD4ZdKEeSUisRPbTY3hA" x="15576" y="9636" width="6133" height="2854"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_AdqtQJdKEeSUisRPbTY3hA" element="_AdgVMJdKEeSUisRPbTY3hA" source="_yJMiEJdJEeSUisRPbTY3hA" target="__NrsEJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Adr7YJdKEeSUisRPbTY3hA" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Adr7YpdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Adr7Y5dKEeSUisRPbTY3hA" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Adr7YZdKEeSUisRPbTY3hA" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_AdsicJdKEeSUisRPbTY3hA" type="ToMultiplicityLabel" element="_Adg8QJdKEeSUisRPbTY3hA">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_AdsicpdKEeSUisRPbTY3hA" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_AdsicZdKEeSUisRPbTY3hA" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AdqtQZdKEeSUisRPbTY3hA" points="[1374, 4, -3974, 5389]$[5884, 4, 536, 5389]$[5884, -4580, 536, 805]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_ArwMkJdKEeSUisRPbTY3hA" element="_ArnpsJdKEeSUisRPbTY3hA" source="_yJMiEJdJEeSUisRPbTY3hA" target="_5kX6MJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ArwzoJdKEeSUisRPbTY3hA" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ArwzopdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Arwzo5dKEeSUisRPbTY3hA" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ArwzoZdKEeSUisRPbTY3hA" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_ArwzpJdKEeSUisRPbTY3hA" type="ToMultiplicityLabel" element="_AroQwJdKEeSUisRPbTY3hA">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ArxasJdKEeSUisRPbTY3hA" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_ArwzpZdKEeSUisRPbTY3hA" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ArwMkZdKEeSUisRPbTY3hA" points="[-8, -24, 1, 148]$[-8, -240, 1, -68]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_A26TsJdKEeSUisRPbTY3hA" element="_A2xw0JdKEeSUisRPbTY3hA" source="_yDnegJdJEeSUisRPbTY3hA" target="_9RjWkJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_A266wJdKEeSUisRPbTY3hA" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_A266wpdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_A266w5dKEeSUisRPbTY3hA" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_A266wZdKEeSUisRPbTY3hA" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_A266xJdKEeSUisRPbTY3hA" type="ToMultiplicityLabel" element="_A2yX4JdKEeSUisRPbTY3hA">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_A27h0JdKEeSUisRPbTY3hA" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_A266xZdKEeSUisRPbTY3hA" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_A26TsZdKEeSUisRPbTY3hA" points="[1, -24, -21, 161]$[14, -226, -8, -41]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_BAS5MJdKEeSUisRPbTY3hA" element="_BAKWUJdKEeSUisRPbTY3hA" source="_x_8fcJdJEeSUisRPbTY3hA" target="_96T_sJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_BATgQJdKEeSUisRPbTY3hA" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_BATgQpdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_BATgQ5dKEeSUisRPbTY3hA" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BATgQZdKEeSUisRPbTY3hA" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_BAUHUJdKEeSUisRPbTY3hA" type="ToMultiplicityLabel" element="_BAKWUpdKEeSUisRPbTY3hA">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_BAUHUpdKEeSUisRPbTY3hA" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_BAUHUZdKEeSUisRPbTY3hA" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BAS5MZdKEeSUisRPbTY3hA" points="[3, -24, -4, 162]$[33, -223, 26, -37]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_315JsJdKEeSUisRPbTY3hA" element="_31bPoJdKEeSUisRPbTY3hA" source="_JDFD4JdKEeSUisRPbTY3hA" target="_yDnegJdJEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_315wwJdKEeSUisRPbTY3hA" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_315wwpdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_316X0JdKEeSUisRPbTY3hA" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_315wwZdKEeSUisRPbTY3hA" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_315JsZdKEeSUisRPbTY3hA" points="[-115, -42, 212, 81]$[-379, -126, -52, -3]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <packageImport xmi:id="_vlt4sJdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_4WMP0JdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_4WMP0ZdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packageImport xmi:id="_vlvt4JdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_4WMP0pdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_4WMP05dJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_x-fG4JdJEeSUisRPbTY3hA" name="Stereotype1">
+ <eAnnotations xmi:id="_4WMP1JdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_4WMP1ZdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_BAKWUpdKEeSUisRPbTY3hA" name="base_Package" association="_BAKWUJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVxZ_pdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyBAJdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Package"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_yDlCQJdJEeSUisRPbTY3hA" name="Stereotype2">
+ <eAnnotations xmi:id="_4WM24ZdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_4WM24pdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_A2yX4JdKEeSUisRPbTY3hA" name="base_Interface" association="_A2xw0JdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyBAZdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyBApdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Interface"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_yJKF0JdJEeSUisRPbTY3hA" name="Stereotype3">
+ <eAnnotations xmi:id="_4WM255dJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_4WM26JdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_Adg8QJdKEeSUisRPbTY3hA" name="base_Property" association="_AdgVMJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyBA5dKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyBBJdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_AroQwJdKEeSUisRPbTY3hA" name="base_Class" association="_ArnpsJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyBBZdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyBBpdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_AdgVMJdKEeSUisRPbTY3hA" name="Property_Stereotype3" memberEnd="_AdgVMZdKEeSUisRPbTY3hA _Adg8QJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyBB5dKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyBCJdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_AdgVMZdKEeSUisRPbTY3hA" name="extension_Stereotype3" type="_yJKF0JdJEeSUisRPbTY3hA" aggregation="composite" association="_AdgVMJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyBCZdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyBCpdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_ArnpsJdKEeSUisRPbTY3hA" name="Class_Stereotype3" memberEnd="_ArnpsZdKEeSUisRPbTY3hA _AroQwJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyBC5dKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyBDJdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_ArnpsZdKEeSUisRPbTY3hA" name="extension_Stereotype3" type="_yJKF0JdJEeSUisRPbTY3hA" aggregation="composite" association="_ArnpsJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyoEJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyoEZdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_A2xw0JdKEeSUisRPbTY3hA" name="Interface_Stereotype2" memberEnd="_A2xw0ZdKEeSUisRPbTY3hA _A2yX4JdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyoEpdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyoE5dKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_A2xw0ZdKEeSUisRPbTY3hA" name="extension_Stereotype2" type="_yDlCQJdJEeSUisRPbTY3hA" aggregation="composite" association="_A2xw0JdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyoFJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyoFZdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_BAKWUJdKEeSUisRPbTY3hA" name="Package_Stereotype1" memberEnd="_BAKWUZdKEeSUisRPbTY3hA _BAKWUpdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyoFpdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyoF5dKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_BAKWUZdKEeSUisRPbTY3hA" name="extension_Stereotype1" type="_x-fG4JdJEeSUisRPbTY3hA" aggregation="composite" association="_BAKWUJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_BVyoGJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_BVyoGZdKEeSUisRPbTY3hA" key="addedInVersion" value="3"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_I9LQMJdKEeSUisRPbTY3hA" name="Stereotype4">
+ <eAnnotations xmi:id="_entqAJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_entqAZdKEeSUisRPbTY3hA" key="addedInVersion" value="5"/>
+ </eAnnotations>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_JC-WMJdKEeSUisRPbTY3hA" name="Stereotype5">
+ <eAnnotations xmi:id="_entqApdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_entqA5dKEeSUisRPbTY3hA" key="addedInVersion" value="5"/>
+ </eAnnotations>
+ <generalization xmi:id="_31bPoJdKEeSUisRPbTY3hA" general="_yDlCQJdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_39V1gJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_39V1gZdKEeSUisRPbTY3hA" key="addedInVersion" value="8"/>
+ </eAnnotations>
+ </generalization>
+ <ownedAttribute xmi:id="_KmqWgJdKEeSUisRPbTY3hA" name="attribute1" visibility="public">
+ <eAnnotations xmi:id="_entqBJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_entqBZdKEeSUisRPbTY3hA" key="addedInVersion" value="5"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_KodtUJdKEeSUisRPbTY3hA" name="attribute2" visibility="public">
+ <eAnnotations xmi:id="_entqBpdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_entqB5dKEeSUisRPbTY3hA" key="addedInVersion" value="5"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_Kp_-YJdKEeSUisRPbTY3hA" name="attribute3" visibility="public">
+ <eAnnotations xmi:id="_entqCJdKEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_entqCZdKEeSUisRPbTY3hA" key="addedInVersion" value="5"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ </ownedAttribute>
+ </packagedElement>
+ <profileApplication xmi:id="_vlvt4ZdJEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_vlwU8JdJEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/ProfileBase.epx#_IfFYQMmBEdqBcN1R6EvWUw?ProfileBase/ProfileBase?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_4WOFAJdJEeSUisRPbTY3hA" source="uml2.extensions">
+ <details xmi:id="_4WOFAZdJEeSUisRPbTY3hA" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/ProfileBase.epx#_bFUAMdWLEdiy4IqP8whjFA?ProfileBase?"/>
+ </profileApplication>
+</uml:Profile>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/customProfile/ProfiledModel.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/customProfile/ProfiledModel.emx
new file mode 100644
index 0000000..0deca1e
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/customProfile/ProfiledModel.emx
@@ -0,0 +1,191 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ProfileUpdates="http:///schemas/ProfileUpdates/_39UnYJdKEeSUisRPbTY3hA/8" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xsi:schemaLocation="http:///schemas/ProfileUpdates/_39UnYJdKEeSUisRPbTY3hA/8 ProfileUpdates.epx#_39UnYZdKEeSUisRPbTY3hA?ProfileUpdates/ProfileUpdates? http:///schemas/ProfileUpdates/_jggk8JdKEeSUisRPbTY3hA/7 ProfileUpdates.epx#_jggk8ZdKEeSUisRPbTY3hA?ProfileUpdates/ProfileUpdates?">
+ <uml:Model xmi:id="_oOv1sJdKEeSUisRPbTY3hA" name="ProfiledModel">
+ <eAnnotations xmi:id="_oOv1sZdKEeSUisRPbTY3hA" source="uml2.diagrams" references="_oOv1spdKEeSUisRPbTY3hA">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_oOv1spdKEeSUisRPbTY3hA" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_o9H-oJdKEeSUisRPbTY3hA" element="_o9EUQJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_o9IlsJdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_o9IlsZdKEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o9IlspdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o9Ils5dKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o9JMwJdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_o9JMwZdKEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_o9JMwpdKEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_o9JMw5dKEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_o9Jz0JdKEeSUisRPbTY3hA" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o9H-oZdKEeSUisRPbTY3hA" x="4762" y="5291"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pAPkEJdKEeSUisRPbTY3hA" element="_pAMgwJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pAQLIZdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pAQLIpdKEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pAQyMJdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pAQyMZdKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pAQyMpdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pAQyM5dKEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pAQyNJdKEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pARZQJdKEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pARZQZdKEeSUisRPbTY3hA" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pAQLIJdKEeSUisRPbTY3hA" x="8580" y="2904" width="5209" height="3250"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_pLGJMJdKEeSUisRPbTY3hA" element="_pLBQsJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pLLowJdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pLMP0JdKEeSUisRPbTY3hA" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLMP0ZdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLMP0pdKEeSUisRPbTY3hA" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLMP05dKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLMP1JdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pLM24JdKEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pLM24ZdKEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pLM24pdKEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pLGJMZdKEeSUisRPbTY3hA" x="17356" y="4021"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pX85cJdKEeSUisRPbTY3hA" element="_pXxTQJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pX_VsJdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pX_VsZdKEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pX_VspdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pX_Vs5dKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pX_8wJdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pX_8wZdKEeSUisRPbTY3hA" type="PackageContents" collapsed="true" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pX85cZdKEeSUisRPbTY3hA" x="6072" y="8316" width="8440" height="4365"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_oOv1s5dKEeSUisRPbTY3hA" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_oOv1tJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_oOv1tZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_oOv1tpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_oOv1t5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_oOv1uJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_oOv1uZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_oOv1updKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_oOv1u5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_oOv1vJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_oOv1vZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_oOv1vpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_oOv1v5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_oOv1wJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_oOv1wZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_oOv1wpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_oOv1w5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_oOv1xJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_oOv1xZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_oOv1xpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_oOv1x5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_oOv1yJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_oOv1yZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_oOv1ypdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_oOv1y5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_oOv1zJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_oOv1zZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_oOv1zpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_oOv1z5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_oOv10JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_oOv10ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_oOv10pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_oOv105dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_oOv11JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_oOv11ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_oOv11pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_oOv115dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_oOv12JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_oOv12ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_oOv12pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_oOv125dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_oOv13JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_oOv13ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_oOv13pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_oOv135dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_oOv14JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_oOv14ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_oOv14pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_oOv145dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_oOv15JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_oOv15ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_oOv15pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_oOv155dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_oOv16JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_oOv16ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_oOv16pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_oOv165dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_oOv17JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_oOv17ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_oOv17pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_oOv175dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_oOv18JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_oOv18ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_oOv18pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_oOv185dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_oOv19JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_oOv19ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_oOv19pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_oOv195dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_oOv1-JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_oOv1-ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_oOv1-pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_oOv1-5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_oOv1_JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_oOv1_ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_oOv1_pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_oOv1_5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_oOv2AJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_oOv2AZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_oOv2ApdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_oOv2A5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_oOv2BJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_oOv2BZdKEeSUisRPbTY3hA">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Class" xmi:id="_o9EUQJdKEeSUisRPbTY3hA" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_pAMgwJdKEeSUisRPbTY3hA" name="Class2">
+ <ownedAttribute xmi:id="_ptrR0JdKEeSUisRPbTY3hA" name="attribute1" visibility="private"/>
+ <ownedAttribute xmi:id="_pvM70JdKEeSUisRPbTY3hA" name="attribute2" visibility="private"/>
+ <ownedAttribute xmi:id="_pwul0JdKEeSUisRPbTY3hA" name="attribute3" visibility="private"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_pLBQsJdKEeSUisRPbTY3hA" name="Interface1"/>
+ <packagedElement xmi:type="uml:Package" xmi:id="_pXxTQJdKEeSUisRPbTY3hA" name="Package1">
+ <eAnnotations xmi:id="_pX4A8JdKEeSUisRPbTY3hA" source="uml2.diagrams" references="_pX4A8ZdKEeSUisRPbTY3hA">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_pX4A8ZdKEeSUisRPbTY3hA" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <profileApplication xmi:id="_oOv2BpdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_oOv2B5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_oOv2CJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_oOv2CZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_oOv2CpdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_oOv2C5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_v4Ha0JdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_v4Ha0ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="ProfileUpdates.epx#_39UnYZdKEeSUisRPbTY3hA?ProfileUpdates/ProfileUpdates?"/>
+ </eAnnotations>
+ <appliedProfile href="ProfileUpdates.epx#_vfjmUJdJEeSUisRPbTY3hA?ProfileUpdates?"/>
+ </profileApplication>
+ </uml:Model>
+ <ProfileUpdates:Stereotype3 xmi:id="_xUU6IJdKEeSUisRPbTY3hA" base_Class="_o9EUQJdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype3 xmi:id="_x9lSgJdKEeSUisRPbTY3hA" base_Class="_pAMgwJdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype1 xmi:id="_yZM3gJdKEeSUisRPbTY3hA" base_Package="_pXxTQJdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype3 xmi:id="_zZxjsJdKEeSUisRPbTY3hA" base_Property="_pwul0JdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype3 xmi:id="_z1daIJdKEeSUisRPbTY3hA" base_Property="_ptrR0JdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype5 xmi:id="_BAFoYJdLEeSUisRPbTY3hA" base_Interface="_pLBQsJdKEeSUisRPbTY3hA" attribute1="AAADD" attribute2="18"/>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/Libraries.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/Libraries.emx
new file mode 100644
index 0000000..1f33728
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/Libraries.emx
@@ -0,0 +1,266 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Model xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_4L1kB5_bEeSMStbbPSeZNQ" name="Libraries">
+ <eAnnotations xmi:id="_fXd2AZ_cEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Package" href="ModelFragment_2.efx#_44LsoJ_bEeSMStbbPSeZNQ?Libraries/Package1?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_4L1kCJ_bEeSMStbbPSeZNQ" source="uml2.diagrams" references="_4L1kCZ_bEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_4L1kCZ_bEeSMStbbPSeZNQ" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_44OI4J_bEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_44OI4p_bEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_44OI45_bEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_44OI5J_bEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_44Ov8J_bEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_44Ov8Z_bEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_44Ov8p_bEeSMStbbPSeZNQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_5xMYQJ_bEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5xM_UJ_bEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_5xM_UZ_bEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5xM_Up_bEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5xM_U5_bEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5xNmYJ_bEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5xNmYZ_bEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5xNmYp_bEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5xONcJ_bEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_5xONcZ_bEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_2.efx#_5xLKIJ_bEeSMStbbPSeZNQ?Libraries/Package1/Class1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5xMYQZ_bEeSMStbbPSeZNQ" x="555" y="399"/>
+ </children>
+ </children>
+ <element xmi:type="uml:Package" href="ModelFragment_2.efx#_44LsoJ_bEeSMStbbPSeZNQ?Libraries/Package1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_44OI4Z_bEeSMStbbPSeZNQ" x="2640" y="4356" width="5762" height="4118"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_5eF2EJ_bEeSMStbbPSeZNQ" element="_5eEn8J_bEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5eGdIJ_bEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_5eGdIZ_bEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5eHEMJ_bEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5eHEMZ_bEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5eHEMp_bEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5eHEM5_bEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5eHrQJ_bEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5eHrQZ_bEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_5eISUJ_bEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5eF2EZ_bEeSMStbbPSeZNQ" x="11088" y="4224"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_5iE-MJ_bEeSMStbbPSeZNQ" element="_5iDJAJ_bEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_5iE-Mp_bEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_5iE-M5_bEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5iFlQJ_bEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5iFlQZ_bEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_5iFlQp_bEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5iFlQ5_bEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5iGMUJ_bEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_5iGMUZ_bEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_5iGMUp_bEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5iE-MZ_bEeSMStbbPSeZNQ" x="16236" y="3696"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_56N78J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_56N78p_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_56N785_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_56OjAJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_56OjAZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_56OjAp_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_56OjA5_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_56OjBJ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_56PKEJ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_56PKEZ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_1.efx#_VPW9kJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_56N78Z_cEeSMStbbPSeZNQ" x="13943" y="10239"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_6KoWgJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6Ko9kZ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_6Ko9kp_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6KpkoJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6KpkoZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6Kpkop_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_6Kpko5_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_6KpkpJ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_6KqLsJ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_6KqLsZ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="Library.emx#_VTeokJ_cEeSMStbbPSeZNQ?Library/Class1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6Ko9kJ_cEeSMStbbPSeZNQ" x="7593" y="10874"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_6KqywJ_cEeSMStbbPSeZNQ" source="_56N78J_cEeSMStbbPSeZNQ" target="_6KoWgJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6Kqywp_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6KqyxJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6KrZ0J_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6Kqyw5_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6KrZ0Z_cEeSMStbbPSeZNQ" type="ToMultiplicityLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6KrZ05_cEeSMStbbPSeZNQ" type="ToMultiplicity"/>
+ <element xmi:type="uml:Property" href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6KrZ0p_cEeSMStbbPSeZNQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6KrZ1J_cEeSMStbbPSeZNQ" type="ToRoleLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6KsA4J_cEeSMStbbPSeZNQ" type="ToRole"/>
+ <element xmi:type="uml:Property" href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6KrZ1Z_cEeSMStbbPSeZNQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6KsA4Z_cEeSMStbbPSeZNQ" type="FromMultiplicityLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6KsA45_cEeSMStbbPSeZNQ" type="FromMultiplicity"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6KsA4p_cEeSMStbbPSeZNQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6KsA5J_cEeSMStbbPSeZNQ" type="FromRoleLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6Ksn8J_cEeSMStbbPSeZNQ" type="FromRole"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6KsA5Z_cEeSMStbbPSeZNQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6Ksn8Z_cEeSMStbbPSeZNQ" type="ToQualifierLabel">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_6Ksn85_cEeSMStbbPSeZNQ" type="QualifierCompartment"/>
+ <element xmi:type="uml:Property" href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6Ksn8p_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6Ksn9J_cEeSMStbbPSeZNQ" type="FromQualifierLabel">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_6Ksn9p_cEeSMStbbPSeZNQ" type="QualifierCompartment"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6Ksn9Z_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6KtPAJ_cEeSMStbbPSeZNQ" type="ToConstraintLabel">
+ <children xmi:type="notation:ListCompartment" xmi:id="_6KtPAp_cEeSMStbbPSeZNQ" type="ToConstraintCompartment"/>
+ <element xmi:type="uml:Property" href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6KtPAZ_cEeSMStbbPSeZNQ" y="1058"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_6KtPA5_cEeSMStbbPSeZNQ" type="FromConstraintLabel">
+ <children xmi:type="notation:ListCompartment" xmi:id="_6KtPBZ_cEeSMStbbPSeZNQ" type="FromConstraintCompartment"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_6KtPBJ_cEeSMStbbPSeZNQ" y="1058"/>
+ </children>
+ <element xmi:type="uml:Association" href="ModelFragment_1.efx#_YkftYJ_cEeSMStbbPSeZNQ?Library/Fragment1/%3CAssociation%3E?"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6KqywZ_cEeSMStbbPSeZNQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_6omr8J_cEeSMStbbPSeZNQ" source="_5xMYQJ_bEeSMStbbPSeZNQ" target="_6KoWgJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_6omr8p_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6onTAJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_6onTAZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6omr85_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <element xmi:type="uml:Generalization" href="ModelFragment_2.efx#_6ok2wJ_cEeSMStbbPSeZNQ?Libraries/Package1/Class1/%3CGeneralization%3E?"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6omr8Z_cEeSMStbbPSeZNQ" points="[21, 24, -136, -163]$[151, 163, -6, -24]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_4L1kCp_bEeSMStbbPSeZNQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_4L1kC5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_4L1kDJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_4L1kDZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_4L1kDp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_4L1kD5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_4L1kEJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_4L1kEZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_4L1kEp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_4L1kE5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_4L1kFJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_4L1kFZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_4L1kFp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_4L1kF5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_4L1kGJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_4L1kGZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_4L1kGp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_4L1kG5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_4L1kHJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_4L1kHZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_4L1kHp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_4L1kH5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_4L1kIJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_4L1kIZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_4L1kIp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_4L1kI5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_4L1kJJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_4L1kJZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_4L1kJp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_4L1kJ5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_4L1kKJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_4L1kKZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_4L1kKp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_4L1kK5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_4L1kLJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_4L1kLZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_4L1kLp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_4L1kL5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_4L1kMJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_4L1kMZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_4L1kMp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_4L1kM5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_4L1kNJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_4L1kNZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_4L1kNp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_4L1kN5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_4L1kOJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_4L1kOZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_4L1kOp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_4L1kO5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_4L1kPJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_4L1kPZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_4L1kPp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_4L1kP5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_4L1kQJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_4L1kQZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_4L1kQp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_4L1kQ5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_4L1kRJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_4L1kRZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_4L1kRp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_4L1kR5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_4L1kSJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_4L1kSZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_4L1kSp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_4L1kS5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_4L1kTJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_4L1kTZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_4L1kTp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_4L1kT5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_4L1kUJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_4L1kUZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_4L1kUp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_4L1kU5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_4L1kVJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_4L1kVZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_4L1kVp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_4L1kV5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_4L1kWJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_4L1kWZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_4L1kWp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_4L1kW5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_4L1kXJ_bEeSMStbbPSeZNQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packageImport xmi:id="_Bb0FIJ_dEeSMStbbPSeZNQ">
+ <importedPackage xmi:type="uml:Model" href="Library.emx#_9yH3FZ_bEeSMStbbPSeZNQ?Library?"/>
+ </packageImport>
+ <packageImport xmi:id="_DCKX4J_dEeSMStbbPSeZNQ">
+ <importedPackage xmi:type="uml:Model" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ProjectLibrary.emx#_CZfq1J_cEeSMStbbPSeZNQ?ProjectLibrary?"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Package" href="ModelFragment_2.efx#_44LsoJ_bEeSMStbbPSeZNQ?Libraries/Package1?"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_5eEn8J_bEeSMStbbPSeZNQ" name="Class1">
+ <ownedAttribute xmi:id="_7CADYJ_cEeSMStbbPSeZNQ" name="attribute1" visibility="private"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_5iDJAJ_bEeSMStbbPSeZNQ" name="Class2"/>
+ <profileApplication xmi:id="_4L1kXZ_bEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_4L1kXp_bEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_4L1kX5_bEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_4L1kYJ_bEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_4L1kYZ_bEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_4L1kYp_bEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+</uml:Model>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/Library.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/Library.emx
new file mode 100644
index 0000000..699ebbb
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/Library.emx
@@ -0,0 +1,235 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Model xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_9yH3FZ_bEeSMStbbPSeZNQ" name="Library">
+ <eAnnotations xmi:id="_acnsoZ_cEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Package" href="ModelFragment_1.efx#_UWc_oJ_cEeSMStbbPSeZNQ?Library/Fragment1?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_9yH3Fp_bEeSMStbbPSeZNQ" source="uml2.diagrams" references="_9yH3F5_bEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_9yH3F5_bEeSMStbbPSeZNQ" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_UWe00J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UWfb4Z_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_UWfb4p_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UWfb45_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UWgC8J_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UWgC8Z_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_UWgC8p_cEeSMStbbPSeZNQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_VJMrMJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VJNSQJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_VJNSQZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VJNSQp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VJNSQ5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VJNSRJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VJN5UJ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VJN5UZ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VJN5Up_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_VJOgYJ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_1.efx#_VJK2AJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VJMrMZ_cEeSMStbbPSeZNQ" x="292" y="109"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_VPYLsJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VPYywJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_VPYywZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VPYywp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VPZZ0J_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VPZZ0Z_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VPZZ0p_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VPZZ05_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VPaA4J_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_VPaA4Z_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_1.efx#_VPW9kJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VPYLsZ_cEeSMStbbPSeZNQ" x="3017" y="109"/>
+ </children>
+ </children>
+ <element xmi:type="uml:Package" href="ModelFragment_1.efx#_UWc_oJ_cEeSMStbbPSeZNQ?Library/Fragment1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UWfb4J_cEeSMStbbPSeZNQ" x="7249" y="4074" width="7858" height="4471"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_VTf2sJ_cEeSMStbbPSeZNQ" element="_VTeokJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_VTgdwJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_VTgdwZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VTgdwp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VTgdw5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_VTgdxJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VTgdxZ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VThE0J_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_VThE0Z_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_VThE0p_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VTf2sZ_cEeSMStbbPSeZNQ" x="18744" y="8184"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_XZt8UJ_cEeSMStbbPSeZNQ" element="_XZq5AJ_cEeSMStbbPSeZNQ" source="_VTf2sJ_cEeSMStbbPSeZNQ" target="_VJMrMJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_XZt8Up_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_XZujYJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_XZujYZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XZt8U5_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XZt8UZ_cEeSMStbbPSeZNQ" points="[40, 634, 11006, 3474]$[40, 1210, 11006, 4050]$[-10926, 1210, 40, 4050]$[-10926, -2206, 40, 634]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_Ykr6oJ_cEeSMStbbPSeZNQ" source="_VPYLsJ_cEeSMStbbPSeZNQ" target="_VTf2sJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_YkshsJ_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Ykshsp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_YktIwJ_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YkshsZ_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_YktIwZ_cEeSMStbbPSeZNQ" type="ToMultiplicityLabel" element="_Ykj-0J_cEeSMStbbPSeZNQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Yktv0J_cEeSMStbbPSeZNQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YktIwp_cEeSMStbbPSeZNQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Yktv0Z_cEeSMStbbPSeZNQ" type="ToRoleLabel" element="_Ykj-0J_cEeSMStbbPSeZNQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Yktv05_cEeSMStbbPSeZNQ" type="ToRole"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Yktv0p_cEeSMStbbPSeZNQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_YkuW4J_cEeSMStbbPSeZNQ" type="FromMultiplicityLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_YkuW4p_cEeSMStbbPSeZNQ" type="FromMultiplicity"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YkuW4Z_cEeSMStbbPSeZNQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_YkuW45_cEeSMStbbPSeZNQ" type="FromRoleLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Yku98J_cEeSMStbbPSeZNQ" type="FromRole"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YkuW5J_cEeSMStbbPSeZNQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_Yku98Z_cEeSMStbbPSeZNQ" type="ToQualifierLabel" element="_Ykj-0J_cEeSMStbbPSeZNQ">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_Yku985_cEeSMStbbPSeZNQ" type="QualifierCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_Yku98p_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_YkvlAJ_cEeSMStbbPSeZNQ" type="FromQualifierLabel">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_YkvlAp_cEeSMStbbPSeZNQ" type="QualifierCompartment"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YkvlAZ_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_YkvlA5_cEeSMStbbPSeZNQ" type="ToConstraintLabel" element="_Ykj-0J_cEeSMStbbPSeZNQ">
+ <children xmi:type="notation:ListCompartment" xmi:id="_YkwMEJ_cEeSMStbbPSeZNQ" type="ToConstraintCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YkvlBJ_cEeSMStbbPSeZNQ" y="1058"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_YkwMEZ_cEeSMStbbPSeZNQ" type="FromConstraintLabel">
+ <children xmi:type="notation:ListCompartment" xmi:id="_YkwME5_cEeSMStbbPSeZNQ" type="FromConstraintCompartment"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_YkwMEp_cEeSMStbbPSeZNQ" y="1058"/>
+ </children>
+ <element xmi:type="uml:Association" href="ModelFragment_1.efx#_YkftYJ_cEeSMStbbPSeZNQ?Library/Fragment1/%3CAssociation%3E?"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ykr6oZ_cEeSMStbbPSeZNQ" points="[62, 23, -225, -82]$[289, 129, 2, 24]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_9yH3GJ_bEeSMStbbPSeZNQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_9yH3GZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_9yH3Gp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_9yH3G5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_9yH3HJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_9yH3HZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_9yH3Hp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_9yH3H5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_9yH3IJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_9yH3IZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_9yH3Ip_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_9yH3I5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_9yH3JJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_9yH3JZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_9yH3Jp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_9yH3J5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_9yH3KJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_9yH3KZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_9yH3Kp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_9yH3K5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_9yH3LJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_9yH3LZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_9yH3Lp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_9yH3L5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_9yH3MJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_9yH3MZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_9yH3Mp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_9yH3M5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_9yH3NJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_9yH3NZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_9yH3Np_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_9yH3N5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_9yH3OJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_9yH3OZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_9yH3Op_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_9yH3O5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_9yH3PJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_9yH3PZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_9yH3Pp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_9yH3P5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_9yH3QJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_9yH3QZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_9yH3Qp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_9yH3Q5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_9yH3RJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_9yH3RZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_9yH3Rp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_9yH3R5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_9yH3SJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_9yH3SZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_9yH3Sp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_9yH3S5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_9yH3TJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_9yH3TZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_9yH3Tp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_9yH3T5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_9yH3UJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_9yH3UZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_9yH3Up_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_9yH3U5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_9yH3VJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_9yH3VZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_9yH3Vp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_9yH3V5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_9yH3WJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_9yH3WZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_9yH3Wp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_9yH3W5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_9yH3XJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_9yH3XZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_9yH3Xp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_9yH3X5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_9yH3YJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_9yH3YZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_9yH3Yp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_9yH3Y5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_9yH3ZJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_9yH3ZZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_9yH3Zp_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_9yH3Z5_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_9yH3aJ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_9yH3aZ_bEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_9yH3ap_bEeSMStbbPSeZNQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Package" href="ModelFragment_1.efx#_UWc_oJ_cEeSMStbbPSeZNQ?Library/Fragment1?"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_VTeokJ_cEeSMStbbPSeZNQ" name="Class1">
+ <generalization xmi:id="_XZq5AJ_cEeSMStbbPSeZNQ">
+ <general xmi:type="uml:Class" href="ModelFragment_1.efx#_VJK2AJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class1?"/>
+ </generalization>
+ <ownedAttribute xmi:id="_Ykj-0J_cEeSMStbbPSeZNQ" name="class2" visibility="private">
+ <type xmi:type="uml:Class" href="ModelFragment_1.efx#_VPW9kJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2?"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YklM8J_cEeSMStbbPSeZNQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_Ykkl4J_cEeSMStbbPSeZNQ" value="1"/>
+ <association href="ModelFragment_1.efx#_YkftYJ_cEeSMStbbPSeZNQ?Library/Fragment1/%3CAssociation%3E?"/>
+ </ownedAttribute>
+ </packagedElement>
+ <profileApplication xmi:id="_9yH3a5_bEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_9yH3bJ_bEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_9yH3bZ_bEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_9yH3bp_bEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_9yH3b5_bEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_9yH3cJ_bEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+</uml:Model>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/ModelFragment_1.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/ModelFragment_1.efx
new file mode 100644
index 0000000..53913d6
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/ModelFragment_1.efx
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_UWc_oJ_cEeSMStbbPSeZNQ" name="Fragment1">
+ <eAnnotations xmi:id="_acnsoJ_cEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Model" href="Library.emx#_9yH3FZ_bEeSMStbbPSeZNQ?Library?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_UWdmsJ_cEeSMStbbPSeZNQ" source="uml2.diagrams" references="_UWdmsZ_cEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_UWdmsZ_cEeSMStbbPSeZNQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_VJK2AJ_cEeSMStbbPSeZNQ" name="Class1" clientDependency="_0bPKwJ_cEeSMStbbPSeZNQ"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_VPW9kJ_cEeSMStbbPSeZNQ" name="Class2">
+ <ownedAttribute xmi:id="_VwCowJ_cEeSMStbbPSeZNQ" name="attribute1" visibility="private">
+ <type xmi:type="uml:Class" href="Library.emx#_VTeokJ_cEeSMStbbPSeZNQ?Library/Class1?"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_YkhikJ_cEeSMStbbPSeZNQ" name="class1" visibility="private" association="_YkftYJ_cEeSMStbbPSeZNQ">
+ <type xmi:type="uml:Class" href="Library.emx#_VTeokJ_cEeSMStbbPSeZNQ?Library/Class1?"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_YkjXwZ_cEeSMStbbPSeZNQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YkjXwJ_cEeSMStbbPSeZNQ" value="1"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Association" xmi:id="_YkftYJ_cEeSMStbbPSeZNQ">
+ <memberEnd href="#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <memberEnd href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Realization" xmi:id="_0bPKwJ_cEeSMStbbPSeZNQ" client="_VJK2AJ_cEeSMStbbPSeZNQ">
+ <supplier xmi:type="uml:Interface" href="ModelFragment_2.efx#_zuVogJ_cEeSMStbbPSeZNQ?Libraries/Package1/Package1/Interface1?"/>
+ </packagedElement>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/ModelFragment_2.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/ModelFragment_2.efx
new file mode 100644
index 0000000..2dc5449
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/ModelFragment_2.efx
@@ -0,0 +1,353 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package 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.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_44LsoJ_bEeSMStbbPSeZNQ" name="Package1">
+ <eAnnotations xmi:id="_fXd2AJ_cEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Model" href="Libraries.emx#_4L1kB5_bEeSMStbbPSeZNQ?Libraries?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_44MTsJ_bEeSMStbbPSeZNQ" source="uml2.diagrams" references="_44MTsZ_bEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_44MTsZ_bEeSMStbbPSeZNQ" type="Freeform" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_gIvh8J_cEeSMStbbPSeZNQ" element="_gItswJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gIwJAJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_gIwJAZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_gIwJAp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_gIwJA5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_gIwJBJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_gIwwEJ_cEeSMStbbPSeZNQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_zuXdsJ_cEeSMStbbPSeZNQ" element="_zuVogJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zuYEwJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_zuYEwZ_cEeSMStbbPSeZNQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zuYEwp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zuYEw5_cEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zuYr0J_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zuYr0Z_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_zuYr0p_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_zuYr05_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_zuZS4J_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zuXdsZ_cEeSMStbbPSeZNQ" x="86" y="351"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gIvh8Z_cEeSMStbbPSeZNQ" x="1846" y="1848" width="4415" height="4704"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_gOin8J_cEeSMStbbPSeZNQ" element="_gOhZ0J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_gOjPAJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_gOjPAZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_gOjPAp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_gOj2EJ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_gOj2EZ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_gOj2Ep_cEeSMStbbPSeZNQ" type="PackageContents" collapsed="true" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gOin8Z_cEeSMStbbPSeZNQ" x="17556" y="4752"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_hc4qYJ_cEeSMStbbPSeZNQ" element="_hc3cQJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_hc5RcJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_hc5RcZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_hc5Rcp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_hc5Rc5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_hc54gJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_hc54gZ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_hc54gp_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_hc6fkJ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_hc6fkZ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hc4qYZ_cEeSMStbbPSeZNQ" x="3810" y="7884"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_hgQugJ_cEeSMStbbPSeZNQ" element="_hgO5UJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_hgQugp_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_hgQug5_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_hgRVkJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_hgRVkZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_hgRVkp_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_hgRVk5_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_hgR8oJ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_hgR8oZ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_hgR8op_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hgQugZ_cEeSMStbbPSeZNQ" x="10296" y="9372"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_jSx1AJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_jSycEJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_jSycEZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jSycEp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jSycE5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_jSzDIJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_jSzDIZ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_jSzDIp_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_jSzDI5_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_jSzqMJ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ModelFragment_1.efx#_Eem9MJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jSx1AZ_cEeSMStbbPSeZNQ" x="17991" y="9233"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_kORM4J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_kORz8J_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_kORz8Z_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_kORz8p_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_kORz85_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_kOSbAJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_kOSbAZ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_kOSbAp_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_kOSbA5_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_kOTCEJ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ModelFragment_1.efx#_EmGFQJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kORM4Z_cEeSMStbbPSeZNQ" x="11352" y="12540"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_wvCl0J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_wvDM4J_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_wvDM4Z_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_wvDM4p_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_wvDz8J_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_wvDz8Z_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_wvDz8p_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_wvDz85_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_wvEbAJ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_wvEbAZ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="Library.emx#_VTeokJ_cEeSMStbbPSeZNQ?Library/Class1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wvCl0Z_cEeSMStbbPSeZNQ" x="4524" y="11324"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_yY9J8J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yY9J8p_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_yY9J85_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yY9xAJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yY9xAZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yY9xAp_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yY9xA5_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yY-YEJ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yY-YEZ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_yY-YEp_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_1.efx#_VJK2AJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yY9J8Z_cEeSMStbbPSeZNQ" x="8580" y="4884"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_yY-_IJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yY-_Ip_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_yY-_I5_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yY-_JJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yY_mMJ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yY_mMZ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yY_mMp_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yY_mM5_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yZANQJ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_yZANQZ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_1.efx#_VPW9kJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yY-_IZ_cEeSMStbbPSeZNQ" x="12276" y="4884"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_jt_xYJ_cEeSMStbbPSeZNQ" element="_jt-jQJ_cEeSMStbbPSeZNQ" source="_hgQugJ_cEeSMStbbPSeZNQ" target="_jSx1AJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_juAYcJ_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_juAYcp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_juAYc5_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_juAYcZ_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jt_xYZ_cEeSMStbbPSeZNQ" points="[36, -5, -274, -10]$[303, -30, -7, -35]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_xIu4MJ_cEeSMStbbPSeZNQ" element="_xItqEJ_cEeSMStbbPSeZNQ" source="_hc4qYJ_cEeSMStbbPSeZNQ" target="_wvCl0J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_xIu4Mp_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xIvfQJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_xIvfQZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xIu4M5_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xIu4MZ_cEeSMStbbPSeZNQ" points="[11, 24, -16, -106]$[64, 134, 37, 4]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_yZBbYJ_cEeSMStbbPSeZNQ" source="_yY-_IJ_cEeSMStbbPSeZNQ" target="_wvCl0J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZBbYp_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yZBbZJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yZBbZZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yZBbY5_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZCCcJ_cEeSMStbbPSeZNQ" type="ToMultiplicityLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yZCCcp_cEeSMStbbPSeZNQ" type="ToMultiplicity"/>
+ <element xmi:type="uml:Property" href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yZCCcZ_cEeSMStbbPSeZNQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZCCc5_cEeSMStbbPSeZNQ" type="ToRoleLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yZCpgJ_cEeSMStbbPSeZNQ" type="ToRole"/>
+ <element xmi:type="uml:Property" href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yZCCdJ_cEeSMStbbPSeZNQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZCpgZ_cEeSMStbbPSeZNQ" type="FromMultiplicityLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yZCpg5_cEeSMStbbPSeZNQ" type="FromMultiplicity"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yZCpgp_cEeSMStbbPSeZNQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZCphJ_cEeSMStbbPSeZNQ" type="FromRoleLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yZDQkJ_cEeSMStbbPSeZNQ" type="FromRole"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yZCphZ_cEeSMStbbPSeZNQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZDQkZ_cEeSMStbbPSeZNQ" type="ToQualifierLabel">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yZDQk5_cEeSMStbbPSeZNQ" type="QualifierCompartment"/>
+ <element xmi:type="uml:Property" href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yZDQkp_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZDQlJ_cEeSMStbbPSeZNQ" type="FromQualifierLabel">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_yZD3oJ_cEeSMStbbPSeZNQ" type="QualifierCompartment"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yZDQlZ_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZD3oZ_cEeSMStbbPSeZNQ" type="ToConstraintLabel">
+ <children xmi:type="notation:ListCompartment" xmi:id="_yZD3o5_cEeSMStbbPSeZNQ" type="ToConstraintCompartment"/>
+ <element xmi:type="uml:Property" href="Library.emx#_Ykj-0J_cEeSMStbbPSeZNQ?Library/Class1/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yZD3op_cEeSMStbbPSeZNQ" y="1058"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZD3pJ_cEeSMStbbPSeZNQ" type="FromConstraintLabel">
+ <children xmi:type="notation:ListCompartment" xmi:id="_yZEesJ_cEeSMStbbPSeZNQ" type="FromConstraintCompartment"/>
+ <element xmi:type="uml:Property" href="ModelFragment_1.efx#_YkhikJ_cEeSMStbbPSeZNQ?Library/Fragment1/Class2/class1?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_yZD3pZ_cEeSMStbbPSeZNQ" y="1058"/>
+ </children>
+ <element xmi:type="uml:Association" href="ModelFragment_1.efx#_YkftYJ_cEeSMStbbPSeZNQ?Library/Fragment1/%3CAssociation%3E?"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yZBbYZ_cEeSMStbbPSeZNQ" points="[40, 98, 4970, -5440]$[40, 1447, 4970, -4091]$[-3845, 1447, 1085, -4091]$[-3845, 5484, 1085, -54]$[-4877, 5484, 53, -54]$[-4877, 5538, 53, 0]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yaroQJ_cEeSMStbbPSeZNQ" id="(0.5001983960753649,0.9302788844621508)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yasPUJ_cEeSMStbbPSeZNQ" id="(0.6666666666666666,0.0)"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_yZEesZ_cEeSMStbbPSeZNQ" source="_wvCl0J_cEeSMStbbPSeZNQ" target="_yY9J8J_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_yZFFwJ_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yZFFwp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_yZFFw5_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yZFFwZ_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <element xmi:type="uml:Generalization" href="Library.emx#_XZq5AJ_cEeSMStbbPSeZNQ?Library/Class1/%3CGeneralization%3E?"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yZEesp_cEeSMStbbPSeZNQ" points="[318, 0, -4064, 5270]$[318, -635, -4064, 4635]$[2074, -635, -2308, 4635]$[2074, -4353, -2308, 917]$[4131, -4353, -251, 917]$[4131, -5173, -251, 97]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yaqaIJ_cEeSMStbbPSeZNQ" id="(0.3333333333333333,0.0)"/>
+ <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yaqaIZ_cEeSMStbbPSeZNQ" id="(0.5001637206551126,0.923469387755102)"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_0bS1IJ_cEeSMStbbPSeZNQ" source="_yY9J8J_cEeSMStbbPSeZNQ" target="_zuXdsJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0bTcMJ_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0bTcMp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0bTcM5_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0bTcMZ_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <element xmi:type="uml:Realization" href="ModelFragment_1.efx#_0bPKwJ_cEeSMStbbPSeZNQ?Library/Fragment1/%3CRealization%3E?"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0bS1IZ_cEeSMStbbPSeZNQ" points="[-977, -385, 5183, 967]$[-2572, -385, 3588, 967]$[-2572, -1311, 3588, 41]$[-4931, -1311, 1229, 41]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_5xLKIJ_bEeSMStbbPSeZNQ" name="Class1">
+ <generalization xmi:id="_6ok2wJ_cEeSMStbbPSeZNQ">
+ <general xmi:type="uml:Class" href="Library.emx#_VTeokJ_cEeSMStbbPSeZNQ?Library/Class1?"/>
+ </generalization>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gItswJ_cEeSMStbbPSeZNQ" name="Package1">
+ <eAnnotations xmi:id="_gItswZ_cEeSMStbbPSeZNQ" source="uml2.diagrams" references="_gItswp_cEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_gItswp_cEeSMStbbPSeZNQ" type="Freeform" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_qjzLkJ_cEeSMStbbPSeZNQ" element="_qjx9cJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qjzyoJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_qjzyoZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_qjzyop_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_qjzyo5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_qj0ZsJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_qj0ZsZ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_qj0Zsp_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_qj0Zs5_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_qj1AwJ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qjzLkZ_cEeSMStbbPSeZNQ" x="5423" y="4312"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_qnUZoJ_cEeSMStbbPSeZNQ" element="_qnSkcJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_qnVAsJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_qnVAsZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_qnVAsp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_qnVAs5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_qnVAtJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_qnVnwJ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_qnVnwZ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_qnVnwp_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_qnWO0J_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qnUZoZ_cEeSMStbbPSeZNQ" x="14075" y="4603"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_rJ6JUJ_cEeSMStbbPSeZNQ" element="_rJ4UIJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_rJ6wYJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_rJ6wYZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_rJ6wYp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_rJ6wY5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_rJ6wZJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_rJ7XcJ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_rJ7XcZ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_rJ7Xcp_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_rJ7-gJ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rJ6JUZ_cEeSMStbbPSeZNQ" x="7128" y="7392"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_r5E8cJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r5FjgJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_r5FjgZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5Fjgp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5Fjg5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5FjhJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5GKkJ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5GKkZ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5GKkp_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_r5GxoJ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ModelFragment_1.efx#_Eem9MJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r5E8cZ_cEeSMStbbPSeZNQ" x="15451" y="8069"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_sJHjkJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_sJIKoJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_sJIKoZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_sJIKop_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_sJIKo5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_sJIKpJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_sJIxsJ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_sJIxsZ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_sJIxsp_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_sJIxs5_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ModelFragment_1.efx#_EmGFQJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sJHjkZ_cEeSMStbbPSeZNQ" x="6376" y="10371"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_t-0g8J_cEeSMStbbPSeZNQ" element="_t-yrwJ_cEeSMStbbPSeZNQ" source="_qnUZoJ_cEeSMStbbPSeZNQ" target="_r5E8cJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_t-0g8p_cEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_t-1IAJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_t-1IAZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t-0g85_cEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t-0g8Z_cEeSMStbbPSeZNQ" points="[21, 24, -81, -118]$[104, 107, 2, -35]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_qjx9cJ_cEeSMStbbPSeZNQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_qnSkcJ_cEeSMStbbPSeZNQ" name="Class2">
+ <generalization xmi:id="_t-yrwJ_cEeSMStbbPSeZNQ">
+ <general xmi:type="uml:Class" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ModelFragment_1.efx#_Eem9MJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass1?"/>
+ </generalization>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_rJ4UIJ_cEeSMStbbPSeZNQ" name="Class3">
+ <ownedAttribute xmi:id="_sXxqoJ_cEeSMStbbPSeZNQ" name="attribute1" visibility="private">
+ <type xmi:type="uml:Class" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ModelFragment_1.efx#_EmGFQJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass2?"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_zuVogJ_cEeSMStbbPSeZNQ" name="Interface1">
+ <ownedAttribute xmi:id="_1i9AwJ_cEeSMStbbPSeZNQ" name="attribute1" visibility="private"/>
+ <ownedAttribute xmi:id="_1lAPMJ_cEeSMStbbPSeZNQ" name="attribute2" visibility="private"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_gOhZ0J_cEeSMStbbPSeZNQ" name="Package2">
+ <eAnnotations xmi:id="_gOhZ0Z_cEeSMStbbPSeZNQ" source="uml2.diagrams" references="_gOhZ0p_cEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_gOhZ0p_cEeSMStbbPSeZNQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_hc3cQJ_cEeSMStbbPSeZNQ" name="Class2">
+ <generalization xmi:id="_xItqEJ_cEeSMStbbPSeZNQ">
+ <general xmi:type="uml:Class" href="Library.emx#_VTeokJ_cEeSMStbbPSeZNQ?Library/Class1?"/>
+ </generalization>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_hgO5UJ_cEeSMStbbPSeZNQ" name="Class3">
+ <generalization xmi:id="_jt-jQJ_cEeSMStbbPSeZNQ">
+ <general xmi:type="uml:Class" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ModelFragment_1.efx#_Eem9MJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass1?"/>
+ </generalization>
+ <ownedAttribute xmi:id="_kwMOMJ_cEeSMStbbPSeZNQ" name="attribute1" visibility="private">
+ <type xmi:type="uml:Class" href="platform:/resource/RSA%20To%20Papyrus%20-%20Workspace%20Library%20-%20Test/ModelFragment_1.efx#_EmGFQJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass2?"/>
+ </ownedAttribute>
+ </packagedElement>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/project/RSA To Papyrus - Workspace Library - Test/ModelFragment_1.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/project/RSA To Papyrus - Workspace Library - Test/ModelFragment_1.efx
new file mode 100644
index 0000000..0bd5ca7
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/project/RSA To Papyrus - Workspace Library - Test/ModelFragment_1.efx
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_Dk340J_cEeSMStbbPSeZNQ" name="FragmentPackage">
+ <eAnnotations xmi:id="_b6_IEJ_cEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Model" href="ProjectLibrary.emx#_CZfq1J_cEeSMStbbPSeZNQ?ProjectLibrary?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_Dk340Z_cEeSMStbbPSeZNQ" source="uml2.diagrams" references="_Dk340p_cEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_Dk340p_cEeSMStbbPSeZNQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_Eem9MJ_cEeSMStbbPSeZNQ" name="FragmentClass1">
+ <ownedAttribute xmi:id="_NP8P8J_cEeSMStbbPSeZNQ" name="attribute1" visibility="private" type="_EmGFQJ_cEeSMStbbPSeZNQ"/>
+ <ownedAttribute xmi:id="_NRZBcJ_cEeSMStbbPSeZNQ" name="attribute2" visibility="private" type="_EmGFQJ_cEeSMStbbPSeZNQ"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_EmGFQJ_cEeSMStbbPSeZNQ" name="FragmentClass2">
+ <ownedAttribute xmi:id="_NArE4J_cEeSMStbbPSeZNQ" name="attribute1" visibility="private">
+ <type xmi:type="uml:Class" href="ProjectLibrary.emx#_C-2aoJ_cEeSMStbbPSeZNQ?ProjectLibrary/Class3?"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_NC9j4J_cEeSMStbbPSeZNQ" name="attribute2" visibility="private">
+ <type xmi:type="uml:Class" href="ProjectLibrary.emx#_C-2aoJ_cEeSMStbbPSeZNQ?ProjectLibrary/Class3?"/>
+ </ownedAttribute>
+ </packagedElement>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/project/RSA To Papyrus - Workspace Library - Test/ProjectLibrary.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/project/RSA To Papyrus - Workspace Library - Test/ProjectLibrary.emx
new file mode 100644
index 0000000..2bff8b3
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/dependencies/project/RSA To Papyrus - Workspace Library - Test/ProjectLibrary.emx
@@ -0,0 +1,256 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Model xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_CZfq1J_cEeSMStbbPSeZNQ" name="ProjectLibrary">
+ <eAnnotations xmi:id="_b6_IEZ_cEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Package" href="ModelFragment_1.efx#_Dk340J_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_CZfq1Z_cEeSMStbbPSeZNQ" source="uml2.diagrams" references="_CZfq1p_cEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_CZfq1p_cEeSMStbbPSeZNQ" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_C4JVsJ_cEeSMStbbPSeZNQ" element="_C4HggJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_C4JVsp_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_C4JVs5_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C4J8wJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C4J8wZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C4J8wp_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C4J8w5_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C4Kj0J_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C4Kj0Z_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_C4Kj0p_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_C4JVsZ_cEeSMStbbPSeZNQ" x="4974" y="4021"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_C7XBwJ_cEeSMStbbPSeZNQ" element="_C7VzoJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_C7Xo0J_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_C7Xo0Z_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C7Xo0p_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C7Xo05_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C7Xo1J_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C7YP4J_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C7YP4Z_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C7YP4p_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_C7Y28J_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_C7XBwZ_cEeSMStbbPSeZNQ" x="11112" y="3995"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_C-3owJ_cEeSMStbbPSeZNQ" element="_C-2aoJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_C-4P0J_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_C-4P0Z_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C-4P0p_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C-4P05_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_C-4P1J_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C-424J_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C-424Z_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_C-424p_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_C-5d8J_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_C-3owZ_cEeSMStbbPSeZNQ" x="18732" y="3651"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_DKuTcJ_cEeSMStbbPSeZNQ" element="_DKr3MJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_DKwIoJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_DKwIoZ_cEeSMStbbPSeZNQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DKwIop_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DKwvsJ_cEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DKwvsZ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DKwvsp_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DKwvs5_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DKwvtJ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DKxWwJ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DKuTcZ_cEeSMStbbPSeZNQ" x="5265" y="6693"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_DOKpAJ_cEeSMStbbPSeZNQ" element="_DOHlsJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_DOKpAp_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_DOKpA5_cEeSMStbbPSeZNQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DOLQEJ_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DOLQEZ_cEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DOLQEp_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DOLQE5_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DOLQFJ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DOL3IJ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DOL3IZ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DOKpAZ_cEeSMStbbPSeZNQ" x="9683" y="6482"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_DSCcYJ_cEeSMStbbPSeZNQ" element="_DSAnMJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_DSDDcJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_DSDDcZ_cEeSMStbbPSeZNQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DSDDcp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DSDDc5_cEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DSDqgJ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DSDqgZ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DSDqgp_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DSERkJ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DSERkZ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DSCcYZ_cEeSMStbbPSeZNQ" x="16774" y="6244"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_DXOeYJ_cEeSMStbbPSeZNQ" element="_DXMpMJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_DXPFcJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_DXPFcZ_cEeSMStbbPSeZNQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DXPFcp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DXPFc5_cEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DXPsgJ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_DXPsgZ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DXPsgp_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DXPsg5_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_DXQTkJ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DXOeYZ_cEeSMStbbPSeZNQ" x="18044" y="9075"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_Dk6VEJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_Dk68IJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_Dk68IZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Dk68Ip_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Dk68I5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_Dk68JJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_Dk68JZ_cEeSMStbbPSeZNQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_EeoyYJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_EepZcJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_EepZcZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EepZcp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EepZc5_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EepZdJ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_EeqAgJ_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_EeqAgZ_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_EeqAgp_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_EeqnkJ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_1.efx#_Eem9MJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EeoyYZ_cEeSMStbbPSeZNQ" x="160" y="241"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_EmH6cJ_cEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_EmIhgJ_cEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_EmIhgZ_cEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EmIhgp_cEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EmJIkJ_cEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_EmJIkZ_cEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_EmJIkp_cEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_EmJIk5_cEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_EmJvoJ_cEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_EmJvoZ_cEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_1.efx#_EmGFQJ_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage/FragmentClass2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_EmH6cZ_cEeSMStbbPSeZNQ" x="5720" y="401"/>
+ </children>
+ </children>
+ <element xmi:type="uml:Package" href="ModelFragment_1.efx#_Dk340J_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Dk6VEZ_cEeSMStbbPSeZNQ" x="4603" y="10054" width="9996" height="4175"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_CZfq15_cEeSMStbbPSeZNQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_CZfq2J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_CZfq2Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_CZfq2p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_CZfq25_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_CZfq3J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_CZfq3Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_CZfq3p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_CZfq35_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_CZfq4J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_CZfq4Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_CZfq4p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_CZfq45_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_CZfq5J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_CZfq5Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_CZfq5p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_CZfq55_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_CZfq6J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_CZfq6Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_CZfq6p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_CZfq65_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_CZfq7J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_CZfq7Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_CZfq7p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_CZfq75_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_CZfq8J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_CZfq8Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_CZfq8p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_CZfq85_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_CZfq9J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_CZfq9Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_CZfq9p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_CZfq95_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_CZfq-J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_CZfq-Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_CZfq-p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_CZfq-5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_CZfq_J_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_CZfq_Z_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_CZfq_p_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_CZfq_5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_CZfrAJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_CZfrAZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_CZfrAp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_CZfrA5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_CZfrBJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_CZfrBZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_CZfrBp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_CZfrB5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_CZfrCJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_CZfrCZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_CZfrCp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_CZfrC5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_CZfrDJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_CZfrDZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_CZfrDp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_CZfrD5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_CZfrEJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_CZfrEZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_CZfrEp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_CZfrE5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_CZfrFJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_CZfrFZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_CZfrFp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_CZfrF5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_CZfrGJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_CZfrGZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_CZfrGp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_CZfrG5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_CZfrHJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_CZfrHZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_CZfrHp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_CZfrH5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_CZfrIJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_CZfrIZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_CZfrIp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_CZfrI5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_CZfrJJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_CZfrJZ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_CZfrJp_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_CZfrJ5_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_CZfrKJ_cEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_CZfrKZ_cEeSMStbbPSeZNQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Class" xmi:id="_C4HggJ_cEeSMStbbPSeZNQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_C7VzoJ_cEeSMStbbPSeZNQ" name="Class2"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_C-2aoJ_cEeSMStbbPSeZNQ" name="Class3"/>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_DKr3MJ_cEeSMStbbPSeZNQ" name="Interface1"/>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_DOHlsJ_cEeSMStbbPSeZNQ" name="Interface2"/>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_DSAnMJ_cEeSMStbbPSeZNQ" name="Interface3"/>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_DXMpMJ_cEeSMStbbPSeZNQ" name="Interface4"/>
+ <packagedElement xmi:type="uml:Package" href="ModelFragment_1.efx#_Dk340J_cEeSMStbbPSeZNQ?ProjectLibrary/FragmentPackage?"/>
+ <profileApplication xmi:id="_CZfrKp_cEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_CZfrK5_cEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_CZfrLJ_cEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_CZfrLZ_cEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_CZfrLp_cEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_CZfrL5_cEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+</uml:Model>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/deployed/ProfiledModel.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/deployed/ProfiledModel.emx
new file mode 100644
index 0000000..0deca1e
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/deployed/ProfiledModel.emx
@@ -0,0 +1,191 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ProfileUpdates="http:///schemas/ProfileUpdates/_39UnYJdKEeSUisRPbTY3hA/8" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xsi:schemaLocation="http:///schemas/ProfileUpdates/_39UnYJdKEeSUisRPbTY3hA/8 ProfileUpdates.epx#_39UnYZdKEeSUisRPbTY3hA?ProfileUpdates/ProfileUpdates? http:///schemas/ProfileUpdates/_jggk8JdKEeSUisRPbTY3hA/7 ProfileUpdates.epx#_jggk8ZdKEeSUisRPbTY3hA?ProfileUpdates/ProfileUpdates?">
+ <uml:Model xmi:id="_oOv1sJdKEeSUisRPbTY3hA" name="ProfiledModel">
+ <eAnnotations xmi:id="_oOv1sZdKEeSUisRPbTY3hA" source="uml2.diagrams" references="_oOv1spdKEeSUisRPbTY3hA">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_oOv1spdKEeSUisRPbTY3hA" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_o9H-oJdKEeSUisRPbTY3hA" element="_o9EUQJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_o9IlsJdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_o9IlsZdKEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o9IlspdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o9Ils5dKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o9JMwJdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_o9JMwZdKEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_o9JMwpdKEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_o9JMw5dKEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_o9Jz0JdKEeSUisRPbTY3hA" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o9H-oZdKEeSUisRPbTY3hA" x="4762" y="5291"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pAPkEJdKEeSUisRPbTY3hA" element="_pAMgwJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pAQLIZdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pAQLIpdKEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pAQyMJdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pAQyMZdKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pAQyMpdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pAQyM5dKEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pAQyNJdKEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pARZQJdKEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pARZQZdKEeSUisRPbTY3hA" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pAQLIJdKEeSUisRPbTY3hA" x="8580" y="2904" width="5209" height="3250"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_pLGJMJdKEeSUisRPbTY3hA" element="_pLBQsJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pLLowJdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pLMP0JdKEeSUisRPbTY3hA" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLMP0ZdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLMP0pdKEeSUisRPbTY3hA" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLMP05dKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLMP1JdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pLM24JdKEeSUisRPbTY3hA" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pLM24ZdKEeSUisRPbTY3hA" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_pLM24pdKEeSUisRPbTY3hA" visible="false" type="SignalCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pLGJMZdKEeSUisRPbTY3hA" x="17356" y="4021"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pX85cJdKEeSUisRPbTY3hA" element="_pXxTQJdKEeSUisRPbTY3hA" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pX_VsJdKEeSUisRPbTY3hA" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pX_VsZdKEeSUisRPbTY3hA" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pX_VspdKEeSUisRPbTY3hA" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pX_Vs5dKEeSUisRPbTY3hA" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pX_8wJdKEeSUisRPbTY3hA" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pX_8wZdKEeSUisRPbTY3hA" type="PackageContents" collapsed="true" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pX85cZdKEeSUisRPbTY3hA" x="6072" y="8316" width="8440" height="4365"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_oOv1s5dKEeSUisRPbTY3hA" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_oOv1tJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_oOv1tZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_oOv1tpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_oOv1t5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_oOv1uJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_oOv1uZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_oOv1updKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_oOv1u5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_oOv1vJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_oOv1vZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_oOv1vpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_oOv1v5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_oOv1wJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_oOv1wZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_oOv1wpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_oOv1w5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_oOv1xJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_oOv1xZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_oOv1xpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_oOv1x5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_oOv1yJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_oOv1yZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_oOv1ypdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_oOv1y5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_oOv1zJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_oOv1zZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_oOv1zpdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_oOv1z5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_oOv10JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_oOv10ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_oOv10pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_oOv105dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_oOv11JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_oOv11ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_oOv11pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_oOv115dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_oOv12JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_oOv12ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_oOv12pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_oOv125dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_oOv13JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_oOv13ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_oOv13pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_oOv135dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_oOv14JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_oOv14ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_oOv14pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_oOv145dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_oOv15JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_oOv15ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_oOv15pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_oOv155dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_oOv16JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_oOv16ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_oOv16pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_oOv165dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_oOv17JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_oOv17ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_oOv17pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_oOv175dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_oOv18JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_oOv18ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_oOv18pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_oOv185dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_oOv19JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_oOv19ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_oOv19pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_oOv195dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_oOv1-JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_oOv1-ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_oOv1-pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_oOv1-5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_oOv1_JdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_oOv1_ZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_oOv1_pdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_oOv1_5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_oOv2AJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_oOv2AZdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_oOv2ApdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_oOv2A5dKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_oOv2BJdKEeSUisRPbTY3hA" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_oOv2BZdKEeSUisRPbTY3hA">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Class" xmi:id="_o9EUQJdKEeSUisRPbTY3hA" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_pAMgwJdKEeSUisRPbTY3hA" name="Class2">
+ <ownedAttribute xmi:id="_ptrR0JdKEeSUisRPbTY3hA" name="attribute1" visibility="private"/>
+ <ownedAttribute xmi:id="_pvM70JdKEeSUisRPbTY3hA" name="attribute2" visibility="private"/>
+ <ownedAttribute xmi:id="_pwul0JdKEeSUisRPbTY3hA" name="attribute3" visibility="private"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_pLBQsJdKEeSUisRPbTY3hA" name="Interface1"/>
+ <packagedElement xmi:type="uml:Package" xmi:id="_pXxTQJdKEeSUisRPbTY3hA" name="Package1">
+ <eAnnotations xmi:id="_pX4A8JdKEeSUisRPbTY3hA" source="uml2.diagrams" references="_pX4A8ZdKEeSUisRPbTY3hA">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_pX4A8ZdKEeSUisRPbTY3hA" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <profileApplication xmi:id="_oOv2BpdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_oOv2B5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_oOv2CJdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_oOv2CZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_oOv2CpdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_oOv2C5dKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_v4Ha0JdKEeSUisRPbTY3hA">
+ <eAnnotations xmi:id="_v4Ha0ZdKEeSUisRPbTY3hA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="ProfileUpdates.epx#_39UnYZdKEeSUisRPbTY3hA?ProfileUpdates/ProfileUpdates?"/>
+ </eAnnotations>
+ <appliedProfile href="ProfileUpdates.epx#_vfjmUJdJEeSUisRPbTY3hA?ProfileUpdates?"/>
+ </profileApplication>
+ </uml:Model>
+ <ProfileUpdates:Stereotype3 xmi:id="_xUU6IJdKEeSUisRPbTY3hA" base_Class="_o9EUQJdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype3 xmi:id="_x9lSgJdKEeSUisRPbTY3hA" base_Class="_pAMgwJdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype1 xmi:id="_yZM3gJdKEeSUisRPbTY3hA" base_Package="_pXxTQJdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype3 xmi:id="_zZxjsJdKEeSUisRPbTY3hA" base_Property="_pwul0JdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype3 xmi:id="_z1daIJdKEeSUisRPbTY3hA" base_Property="_ptrR0JdKEeSUisRPbTY3hA"/>
+ <ProfileUpdates:Stereotype5 xmi:id="_BAFoYJdLEeSUisRPbTY3hA" base_Interface="_pLBQsJdKEeSUisRPbTY3hA" attribute1="AAADD" attribute2="18"/>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Blank Package.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Blank Package.emx
new file mode 100644
index 0000000..a2fe5c1
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Blank Package.emx
@@ -0,0 +1,320 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package 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:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_u4_BkLZ7EeOu-9meM8ButQ" name="Blank Package">
+ <eAnnotations xmi:id="_7AeiEbZ8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Package" href="Package%20-%20Fragment.efx#_0OuW4LZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment?"/>
+ <references xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_u4_BkbZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_u4_BkrZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_u4_BkrZ7EeOu-9meM8ButQ" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_zcSNULZ7EeOu-9meM8ButQ" element="_zb_SYLZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zcSNUrZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_zcSNU7Z7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zcSNVLZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zcSNVbZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zcu5QLZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_zcu5QbZ7EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_9XQosbZ7EeOu-9meM8ButQ" element="_9XQosLZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_9XQos7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_9XQotLZ7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9XQotbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9XQotrZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_9XQot7Z7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9XQouLZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9XQoubZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_9XQourZ7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_9XQou7Z7EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9XQosrZ7EeOu-9meM8ButQ" x="1854" y="1009"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zcSNUbZ7EeOu-9meM8ButQ" x="402" y="528" width="8069" height="5291"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_zve2I7Z7EeOu-9meM8ButQ" element="_zve2ILZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_zve2JbZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_zve2JrZ7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zve2J7Z7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zve2KLZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_zve2KbZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_zve2KrZ7EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_2S-toLZ7EeOu-9meM8ButQ" element="_2S1jsLZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2S-torZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_2S-to7Z7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2S-tpLZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2S-tpbZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2S-tprZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2S-tp7Z7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2S-tqLZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2S-tqbZ7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_2S-tqrZ7EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2S-tobZ7EeOu-9meM8ButQ" x="1083" y="951"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_2ZrLgbZ7EeOu-9meM8ButQ" element="_2ZrLgLZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2ZrLg7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_2ZrLhLZ7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2ZrLhbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2ZrLhrZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2ZrLh7Z7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2ZrLiLZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2ZrLibZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2ZrLirZ7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_2ZrLi7Z7EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2ZrLgrZ7EeOu-9meM8ButQ" x="4647" y="819"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zve2JLZ7EeOu-9meM8ButQ" x="10698" y="792" width="8837" height="5820"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_0B7RA7Z7EeOu-9meM8ButQ" element="_0B7RALZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0B7RBbZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_0B7RBrZ7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0B7RB7Z7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0B7RCLZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0B7RCbZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_0B7RCrZ7EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_7yPLobZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_7yPLo7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_7yPLpLZ7EeOu-9meM8ButQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7yPLpbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7yPLprZ7EeOu-9meM8ButQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7yPLp7Z7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_7yPLqLZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_7yPLqbZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_7yY8oLZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_7yY8obZ7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <element xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7yPLorZ7EeOu-9meM8ButQ" x="2139" y="819"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0B7RBLZ7EeOu-9meM8ButQ" x="270" y="7788" width="7805" height="5000"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_0O3g0LZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_0O3g0rZ7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_0O3g07Z7EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0O3g1LZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0O3g1bZ7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_0O3g1rZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_0O3g17Z7EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_2xxicbZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_2xxic7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_2xxidLZ7EeOu-9meM8ButQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xxidbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xxidrZ7EeOu-9meM8ButQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2xxid7Z7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_2x7TcLZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2x7TcbZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2x7TcrZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_2x7Tc7Z7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <element xmi:type="uml:Interface" href="Package%20-%20Fragment.efx#_2xxicLZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Interface1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_2xxicrZ7EeOu-9meM8ButQ" x="3944" y="530"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_29FakbZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_29Fak7Z7EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_29FalLZ7EeOu-9meM8ButQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_29FalbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_29FalrZ7EeOu-9meM8ButQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_29Fal7Z7EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_29FamLZ7EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_29FambZ7EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_29FamrZ7EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_29Fam7Z7EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <element xmi:type="uml:Interface" href="Package%20-%20Fragment.efx#_29FakLZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Interface2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_29FakrZ7EeOu-9meM8ButQ" x="425" y="689"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_AxXYEbZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_AxXYE7Z8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_AxXYFLZ8EeOu-9meM8ButQ" key="ImageModeStyle" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_AxXYFbZ8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_AxXYFrZ8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_AxXYF7Z8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_AxXYGLZ8EeOu-9meM8ButQ" type="CommentBody"/>
+ <element xmi:type="uml:Comment" href="Package%20-%20Fragment.efx#_AxXYELZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/%3CComment%3E?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AxXYErZ8EeOu-9meM8ButQ" x="7023" y="423"/>
+ </children>
+ </children>
+ <element xmi:type="uml:Package" href="Package%20-%20Fragment.efx#_0OuW4LZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0O3g0bZ7EeOu-9meM8ButQ" x="9900" y="7788" width="16298" height="5132"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_3d0JELZ7EeOu-9meM8ButQ" element="_3dhOILZ7EeOu-9meM8ButQ" source="_2ZrLgbZ7EeOu-9meM8ButQ" target="_2xxicbZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3d0JErZ7EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_3d0JFLZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_3d0JFbZ7EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3d0JE7Z7EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3d0JEbZ7EeOu-9meM8ButQ" points="[10, 24, -87, -261]$[103, 254, 6, -31]"/>
+ <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_4kVsQLZ7EeOu-9meM8ButQ" id="(0.4936086529006883,0.7959183673469388)"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_3qUUALZ7EeOu-9meM8ButQ" element="_3qKjALZ7EeOu-9meM8ButQ" source="_2S-toLZ7EeOu-9meM8ButQ" target="_29FakbZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_3qUUArZ7EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_3qUUBLZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_3qUUBbZ7EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3qUUA7Z7EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3qUUAbZ7EeOu-9meM8ButQ" points="[8, 24, -76, -265]$[91, 319, 7, 30]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_-a86UbZ7EeOu-9meM8ButQ" element="_-a86ULZ7EeOu-9meM8ButQ" source="_9XQosbZ7EeOu-9meM8ButQ" target="_7yPLobZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_-a86U7Z7EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-a86VbZ7EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_-a86VrZ7EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-a86VLZ7EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-a86UrZ7EeOu-9meM8ButQ" points="[4, 24, -45, -221]$[-25, 243, -74, -2]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_CIPrcLZ8EeOu-9meM8ButQ" type="Reference" source="_AxXYEbZ8EeOu-9meM8ButQ" target="_7yPLobZ7EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <element xsi:nil="true"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CIPrcbZ8EeOu-9meM8ButQ" points="[0, 740, 14823, 279]$[0, 1880, 14823, 1419]$[-14784, 1880, 39, 1419]$[-14784, 1266, 39, 805]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_u4_Bk7Z7EeOu-9meM8ButQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_u4_BlLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_u4_BlbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_u4_BlrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_u4_Bl7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_u4_BmLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_u4_BmbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_u4_BmrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_u4_Bm7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_u4_BnLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_u4_BnbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_u4_BnrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_u4_Bn7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_u4_BoLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_u4_BobZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_u4_BorZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_u4_Bo7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_u4_BpLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_u4_BpbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_u4_BprZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_u4_Bp7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_u4_BqLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_u4_BqbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_u4_BqrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_u4_Bq7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_u4_BrLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_u4_BrbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_u4_BrrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_u4_Br7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_u4_BsLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_u4_BsbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_u4_BsrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_u4_Bs7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_u4_BtLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_u4_BtbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_u4_BtrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_u4_Bt7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_u4_BuLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_u4_BubZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_u4_BurZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_u4_Bu7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_u4_BvLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_u4_BvbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_u4_BvrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_u4_Bv7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_u4_BwLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_u4_BwbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_u4_BwrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_u4_Bw7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_u4_BxLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_u4_BxbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_u4_BxrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_u4_Bx7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_u4_ByLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_u4_BybZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_u4_ByrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_u4_By7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_u4_BzLZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_u4_BzbZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_u4_BzrZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_u4_Bz7Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_u4_B0LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_u4_B0bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_u4_B0rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_u4_B07Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_u4_B1LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_u4_B1bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_u4_B1rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_u4_B17Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_u4_B2LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_u4_B2bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_u4_B2rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_u4_B27Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_u4_B3LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_u4_B3bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_u4_B3rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_u4_B37Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_u4_B4LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_u4_B4bZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_u4_B4rZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_u4_B47Z7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_u4_B5LZ7EeOu-9meM8ButQ" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_u4_B5bZ7EeOu-9meM8ButQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Package" xmi:id="_zb_SYLZ7EeOu-9meM8ButQ" name="Package1">
+ <eAnnotations xmi:id="_zcJDYLZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_zcJDYbZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_zcJDYbZ7EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_9XQosLZ7EeOu-9meM8ButQ" name="Class - Standard" clientDependency="_-a86ULZ7EeOu-9meM8ButQ"/>
+ <packagedElement xmi:type="uml:Realization" xmi:id="_-a86ULZ7EeOu-9meM8ButQ" client="_9XQosLZ7EeOu-9meM8ButQ">
+ <supplier xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_zve2ILZ7EeOu-9meM8ButQ" name="Package - Standard">
+ <eAnnotations xmi:id="_zve2IbZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_zve2IrZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_zve2IrZ7EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_2S1jsLZ7EeOu-9meM8ButQ" name="Class1" clientDependency="_3qKjALZ7EeOu-9meM8ButQ"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_2ZrLgLZ7EeOu-9meM8ButQ" name="Class2" clientDependency="_3dhOILZ7EeOu-9meM8ButQ"/>
+ <packagedElement xmi:type="uml:Realization" xmi:id="_3dhOILZ7EeOu-9meM8ButQ" client="_2ZrLgLZ7EeOu-9meM8ButQ">
+ <supplier xmi:type="uml:Interface" href="Package%20-%20Fragment.efx#_2xxicLZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Interface1?"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Realization" xmi:id="_3qKjALZ7EeOu-9meM8ButQ" client="_2S1jsLZ7EeOu-9meM8ButQ">
+ <supplier xmi:type="uml:Interface" href="Package%20-%20Fragment.efx#_29FakLZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Interface2?"/>
+ </packagedElement>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_0B7RALZ7EeOu-9meM8ButQ" name="Package3">
+ <eAnnotations xmi:id="_0B7RAbZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_0B7RArZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_0B7RArZ7EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" href="Package%20-%20Fragment.efx#_0OuW4LZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment?"/>
+ <profileApplication xmi:id="_u4_B5rZ7EeOu-9meM8ButQ">
+ <eAnnotations xmi:id="_u4_B57Z7EeOu-9meM8ButQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_u4_B6LZ7EeOu-9meM8ButQ">
+ <eAnnotations xmi:id="_u4_B6bZ7EeOu-9meM8ButQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_u4_B6rZ7EeOu-9meM8ButQ">
+ <eAnnotations xmi:id="_u4_B67Z7EeOu-9meM8ButQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Class3.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Class3.efx
new file mode 100644
index 0000000..6c03e62
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Class3.efx
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Class xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmi:id="_ONlFkLZ8EeOu-9meM8ButQ" name="Class3">
+ <eAnnotations xmi:id="_D3Ad4LZ9EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Package%20-%20Fragment.efx#_0OuW4LZ7EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment?"/>
+ </eAnnotations>
+ <generalization xmi:id="_OzOJQLZ8EeOu-9meM8ButQ">
+ <general xmi:type="uml:Class" href="Package%20-%20Fragment.efx#_ODdgQLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class1?"/>
+ </generalization>
+ <ownedAttribute xmi:id="_OgVCcbZ8EeOu-9meM8ButQ" name="class2" visibility="private">
+ <type xmi:type="uml:Class" href="Package%20-%20Fragment.efx#_OHLioLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class2?"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_OgeMYbZ8EeOu-9meM8ButQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OgeMYLZ8EeOu-9meM8ButQ" value="1"/>
+ <association href="Package%20-%20Fragment.efx#_OgVCcLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/%3CAssociation%3E?"/>
+ </ownedAttribute>
+ <ownedOperation xmi:id="_QeoiMLZ8EeOu-9meM8ButQ" name="Operation1" visibility="private">
+ <ownedParameter xmi:id="_Uw0wILZ8EeOu-9meM8ButQ" name="Parameter1" direction="return">
+ <type xmi:type="uml:Class" href="Blank%20Package.emx#_9XQosLZ7EeOu-9meM8ButQ?Blank%20Package/Package1/Class%20-%20Standard?"/>
+ </ownedParameter>
+ </ownedOperation>
+ <ownedOperation xmi:id="_QgHv8LZ8EeOu-9meM8ButQ" name="Operation2"/>
+ <ownedOperation xmi:id="_Qh54oLZ8EeOu-9meM8ButQ" name="Operation3"/>
+ <ownedOperation xmi:id="_QjsoYLZ8EeOu-9meM8ButQ" name="Operation4"/>
+ <ownedOperation xmi:id="_QlexELZ8EeOu-9meM8ButQ" name="Operation5"/>
+</uml:Class>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Interface - Fragment.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Interface - Fragment.efx
new file mode 100644
index 0000000..33f8347
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Interface - Fragment.efx
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Interface xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmi:id="_7yPLoLZ7EeOu-9meM8ButQ" name="Interface - Fragment">
+ <eAnnotations xmi:id="__TtR0bZ8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragments"/>
+ <eAnnotations xmi:id="__TtR0LZ8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Blank%20Package.emx#_0B7RALZ7EeOu-9meM8ButQ?Blank%20Package/Package3?"/>
+ </eAnnotations>
+</uml:Interface>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Package - Fragment.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Package - Fragment.efx
new file mode 100644
index 0000000..d1f0068
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/fragments/Package - Fragment.efx
@@ -0,0 +1,266 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package 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.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_0OuW4LZ7EeOu-9meM8ButQ" name="Package - Fragment">
+ <eAnnotations xmi:id="_D3Ad4bZ9EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Class" href="Class3.efx#_ONlFkLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_7AeiELZ8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Package" href="Blank%20Package.emx#_u4_BkLZ7EeOu-9meM8ButQ?Blank%20Package?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_0OuW4bZ7EeOu-9meM8ButQ" source="uml2.diagrams" references="_0OuW4rZ7EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_0OuW4rZ7EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_LfXL0LZ8EeOu-9meM8ButQ" type="Class" name="ClassDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_MJ6ksbZ8EeOu-9meM8ButQ" element="_MJ6ksLZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_MJ6ks7Z8EeOu-9meM8ButQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_MJ6ktLZ8EeOu-9meM8ButQ" key="ImageModeStyle" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_MJ6ktbZ8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_MJ6ktrZ8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_MJ6kt7Z8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_MJ6kuLZ8EeOu-9meM8ButQ" type="CommentBody"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MJ6ksrZ8EeOu-9meM8ButQ" x="846" y="1640" width="4680" height="1639"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_ODdgQbZ8EeOu-9meM8ButQ" element="_ODdgQLZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ODdgQ7Z8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_ODdgRLZ8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ODdgRbZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ODdgRrZ8EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ODdgR7Z8EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ODdgSLZ8EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ODdgSbZ8EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ODdgSrZ8EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_ODdgS7Z8EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ODdgQrZ8EeOu-9meM8ButQ" x="1032" y="7158"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_OHLiobZ8EeOu-9meM8ButQ" element="_OHLioLZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OHLio7Z8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_OHLipLZ8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OHLipbZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OHLiprZ8EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OHLip7Z8EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OHLiqLZ8EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OHLiqbZ8EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OHLiqrZ8EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_OHLiq7Z8EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OHLiorZ8EeOu-9meM8ButQ" x="9108" y="3168"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_ONu2kLZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ONu2krZ8EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_ONu2k7Z8EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ONu2lLZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ONu2lbZ8EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ONu2lrZ8EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ONu2l7Z8EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ONu2mLZ8EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ONu2mbZ8EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_ONu2mrZ8EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="Class3.efx#_ONlFkLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ONu2kbZ8EeOu-9meM8ButQ" x="8184" y="10164" width="5446" height="4071"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_mtbqM7Z9EeOu-9meM8ButQ" element="_mtbqMLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_mtbqNbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_mtbqNrZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_mtlbMLZ9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_mtlbMbZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_mtlbMrZ9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_mtlbM7Z9EeOu-9meM8ButQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_o6Bdk7Z9EeOu-9meM8ButQ" element="_o6BdkLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_o6BdlbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_o6BdlrZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o6Bdl7Z9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o6BdmLZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_o6BdmbZ9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_o6LOkLZ9EeOu-9meM8ButQ" type="PackageContents" collapsed="true" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o6BdlLZ9EeOu-9meM8ButQ" x="404" y="138" width="11482" height="5688"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pLu4o7Z9EeOu-9meM8ButQ" element="_pLu4oLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pLu4pbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pLu4prZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLu4p7Z9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLu4qLZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pLu4qbZ9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pL4CkLZ9EeOu-9meM8ButQ" type="PackageContents" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pLu4pLZ9EeOu-9meM8ButQ" x="933" y="1593" width="9101" height="3307"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_pa59E7Z9EeOu-9meM8ButQ" element="_pa59ELZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_pa59FbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_pa59FrZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pa59F7Z9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pa59GLZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_pa59GbZ9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_pa59GrZ9EeOu-9meM8ButQ" type="PackageContents" canonical="false"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pa59FLZ9EeOu-9meM8ButQ" x="1992" y="2889" width="5235"/>
+ </children>
+ </children>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mtbqNLZ9EeOu-9meM8ButQ" x="14916" y="1188" width="13122" height="7751"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_OgxHULZ8EeOu-9meM8ButQ" element="_OgVCcLZ8EeOu-9meM8ButQ" source="_ONu2kLZ8EeOu-9meM8ButQ" target="_OHLiobZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHUrZ8EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHVLZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHVbZ8EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OgxHU7Z8EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHVrZ8EeOu-9meM8ButQ" type="ToMultiplicityLabel" element="_OgeMYrZ8EeOu-9meM8ButQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHWLZ8EeOu-9meM8ButQ" type="ToMultiplicity"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHV7Z8EeOu-9meM8ButQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHWbZ8EeOu-9meM8ButQ" type="ToRoleLabel" element="_OgeMYrZ8EeOu-9meM8ButQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHW7Z8EeOu-9meM8ButQ" type="ToRole"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHWrZ8EeOu-9meM8ButQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHXLZ8EeOu-9meM8ButQ" type="FromMultiplicityLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHXrZ8EeOu-9meM8ButQ" type="FromMultiplicity"/>
+ <element xmi:type="uml:Property" href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHXbZ8EeOu-9meM8ButQ" y="396"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHX7Z8EeOu-9meM8ButQ" type="FromRoleLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OgxHYbZ8EeOu-9meM8ButQ" type="FromRole"/>
+ <element xmi:type="uml:Property" href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHYLZ8EeOu-9meM8ButQ" y="-397"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHYrZ8EeOu-9meM8ButQ" type="ToQualifierLabel" element="_OgeMYrZ8EeOu-9meM8ButQ">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OgxHZLZ8EeOu-9meM8ButQ" type="QualifierCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHY7Z8EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHZbZ8EeOu-9meM8ButQ" type="FromQualifierLabel">
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OgxHZ7Z8EeOu-9meM8ButQ" type="QualifierCompartment"/>
+ <element xmi:type="uml:Property" href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHZrZ8EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHaLZ8EeOu-9meM8ButQ" type="ToConstraintLabel" element="_OgeMYrZ8EeOu-9meM8ButQ">
+ <children xmi:type="notation:ListCompartment" xmi:id="_OgxHarZ8EeOu-9meM8ButQ" type="ToConstraintCompartment"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHabZ8EeOu-9meM8ButQ" y="1058"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_OgxHa7Z8EeOu-9meM8ButQ" type="FromConstraintLabel">
+ <children xmi:type="notation:ListCompartment" xmi:id="_OgxHbbZ8EeOu-9meM8ButQ" type="FromConstraintCompartment"/>
+ <element xmi:type="uml:Property" href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_OgxHbLZ8EeOu-9meM8ButQ" y="1058"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OgxHUbZ8EeOu-9meM8ButQ" points="[15, -24, -83, 148]$[97, -148, -1, 24]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_OzOJQbZ8EeOu-9meM8ButQ" source="_ONu2kLZ8EeOu-9meM8ButQ" target="_ODdgQbZ8EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OzOJQ7Z8EeOu-9meM8ButQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OzX6QLZ8EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OzX6QbZ8EeOu-9meM8ButQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OzOJRLZ8EeOu-9meM8ButQ" y="-186"/>
+ </children>
+ <element xmi:type="uml:Generalization" href="Class3.efx#_OzOJQLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/%3CGeneralization%3E?"/>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OzOJQrZ8EeOu-9meM8ButQ" points="[-35, -24, 211, 154]$[-283, -183, -37, -5]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <ownedComment xmi:id="_AxXYELZ8EeOu-9meM8ButQ">
+ <annotatedElement xmi:type="uml:Interface" href="Interface%20-%20Fragment.efx#_7yPLoLZ7EeOu-9meM8ButQ?Blank%20Package/Package3/Interface%20-%20Fragment?"/>
+ <body><p>Annotates an element located in another fragment</p></body>
+ </ownedComment>
+ <ownedComment xmi:id="_MJ6ksLZ8EeOu-9meM8ButQ">
+ <body><p>Class Diagram for a Fragment</p></body>
+ </ownedComment>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_2xxicLZ7EeOu-9meM8ButQ" name="Interface1"/>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_29FakLZ7EeOu-9meM8ButQ" name="Interface2"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_ODdgQLZ8EeOu-9meM8ButQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_OHLioLZ8EeOu-9meM8ButQ" name="Class2">
+ <ownedAttribute xmi:id="_OgeMYrZ8EeOu-9meM8ButQ" name="class3" visibility="private" association="_OgVCcLZ8EeOu-9meM8ButQ">
+ <type xmi:type="uml:Class" href="Class3.efx#_ONlFkLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3?"/>
+ <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_OgeMZLZ8EeOu-9meM8ButQ" value="1"/>
+ <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_OgeMY7Z8EeOu-9meM8ButQ" value="1"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_QA4PMLZ8EeOu-9meM8ButQ" name="attribute1" visibility="private"/>
+ <ownedAttribute xmi:id="_QFC9gLZ8EeOu-9meM8ButQ" name="attribute2" visibility="private"/>
+ <ownedAttribute xmi:id="_QGiLQLZ8EeOu-9meM8ButQ" name="attribute3" visibility="private"/>
+ <ownedAttribute xmi:id="_QILKALZ8EeOu-9meM8ButQ" name="attribute4" visibility="private"/>
+ <ownedAttribute xmi:id="_QJ9SsLZ8EeOu-9meM8ButQ" name="attribute5" visibility="private"/>
+ <ownedAttribute xmi:id="_QLlqYLZ8EeOu-9meM8ButQ" name="attribute6" visibility="private"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" href="Class3.efx#_ONlFkLZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3?"/>
+ <packagedElement xmi:type="uml:Association" xmi:id="_OgVCcLZ8EeOu-9meM8ButQ">
+ <memberEnd href="Class3.efx#_OgVCcbZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class3/class2?"/>
+ <memberEnd href="#_OgeMYrZ8EeOu-9meM8ButQ?Blank%20Package/Package%20-%20Fragment/Class2/class3?"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_mtbqMLZ9EeOu-9meM8ButQ" name="Package1">
+ <eAnnotations xmi:id="_mtbqMbZ9EeOu-9meM8ButQ" source="uml2.diagrams" references="_mtbqMrZ9EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_mtbqMrZ9EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Package" xmi:id="_o6BdkLZ9EeOu-9meM8ButQ" name="Package1">
+ <eAnnotations xmi:id="_o6BdkbZ9EeOu-9meM8ButQ" source="uml2.diagrams" references="_o6BdkrZ9EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_o6BdkrZ9EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_pLu4oLZ9EeOu-9meM8ButQ" name="Package2">
+ <eAnnotations xmi:id="_pLu4obZ9EeOu-9meM8ButQ" source="uml2.diagrams" references="_pLu4orZ9EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_pLu4orZ9EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Package" xmi:id="_pa59ELZ9EeOu-9meM8ButQ" name="Package3">
+ <eAnnotations xmi:id="_pa59EbZ9EeOu-9meM8ButQ" source="uml2.diagrams" references="_pa59ErZ9EeOu-9meM8ButQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_pa59ErZ9EeOu-9meM8ButQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_rkYLALZ9EeOu-9meM8ButQ" type="Class" name="ClassDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_r0lxQbZ9EeOu-9meM8ButQ" element="_r0lxQLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r0lxQ7Z9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_r0lxRLZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r0lxRbZ9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r0lxRrZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r0lxR7Z9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r0lxSLZ9EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r0lxSbZ9EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r0lxSrZ9EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_r0lxS7Z9EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r0lxQrZ9EeOu-9meM8ButQ" x="5344" y="5476"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_r5gGcbZ9EeOu-9meM8ButQ" element="_r5gGcLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_r5gGc7Z9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_r5gGdLZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5gGdbZ9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5gGdrZ9EeOu-9meM8ButQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_r5gGd7Z9EeOu-9meM8ButQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5gGeLZ9EeOu-9meM8ButQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5gGebZ9EeOu-9meM8ButQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_r5gGerZ9EeOu-9meM8ButQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_r5gGe7Z9EeOu-9meM8ButQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r5gGcrZ9EeOu-9meM8ButQ" x="16218" y="5688"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_scT4kbZ9EeOu-9meM8ButQ" element="_scT4kLZ9EeOu-9meM8ButQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label">
+ <eAnnotations xmi:id="_scT4k7Z9EeOu-9meM8ButQ" source="com.ibm.xtools.uml.ui.diagram.internal.styles">
+ <details xmi:id="_scT4lLZ9EeOu-9meM8ButQ" key="ImageModeStyle" value="true"/>
+ </eAnnotations>
+ <children xmi:type="notation:DecorationNode" xmi:id="_scT4lbZ9EeOu-9meM8ButQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_scT4lrZ9EeOu-9meM8ButQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_scT4l7Z9EeOu-9meM8ButQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_scT4mLZ9EeOu-9meM8ButQ" type="CommentBody"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_scT4krZ9EeOu-9meM8ButQ" x="7249" y="926" width="8966" height="3676"/>
+ </children>
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <ownedComment xmi:id="_scT4kLZ9EeOu-9meM8ButQ">
+ <body><p>Deep nested ClassDiagram:</p><p>Blank Package::Package - Fragment::Package1::Package3</p></body>
+ </ownedComment>
+ <packagedElement xmi:type="uml:Class" xmi:id="_r0lxQLZ9EeOu-9meM8ButQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_r5gGcLZ9EeOu-9meM8ButQ" name="Class2"/>
+ </packagedElement>
+ </packagedElement>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/parameters/TestParameters.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/parameters/TestParameters.emx
new file mode 100644
index 0000000..8732961
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/parameters/TestParameters.emx
@@ -0,0 +1,193 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Default="http:///schemas/Default/_fNm3AAqoEd6-N_NOT9vsCA/2" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xsi:schemaLocation="http:///schemas/Default/_fNm3AAqoEd6-N_NOT9vsCA/2 pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?">
+ <uml:Model xmi:id="_78anwp_dEeSMStbbPSeZNQ" name="TestParameters">
+ <eAnnotations xmi:id="_78anw5_dEeSMStbbPSeZNQ" source="uml2.diagrams" references="_78anxJ_dEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_78anxJ_dEeSMStbbPSeZNQ" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_8rc4AJ_dEeSMStbbPSeZNQ" element="_8rYmkJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_8rdfEJ_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_8rdfEZ_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_8rdfEp_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_8reGIJ_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_8reGIZ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_8reGIp_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_8reGI5_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_8retMJ_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_8retMZ_dEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8rc4AZ_dEeSMStbbPSeZNQ" x="5544" y="4884"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_J30ysJ_eEeSMStbbPSeZNQ" element="_J3whQJ_eEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_J31ZwJ_eEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_J31ZwZ_eEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_J31Zwp_eEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_J31Zw5_eEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_J31ZxJ_eEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_J32A0J_eEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_J32A0Z_eEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_J32A0p_eEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_J32A05_eEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J30ysZ_eEeSMStbbPSeZNQ" x="15557" y="4868"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_ocsqQJ_eEeSMStbbPSeZNQ" element="_ocpm8J_eEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" fillColor="14277119" transparency="0" lineColor="12632258" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_octRUJ_eEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_octRUZ_eEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_octRUp_eEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_octRU5_eEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_octRVJ_eEeSMStbbPSeZNQ" type="ValueSpecification"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ocsqQZ_eEeSMStbbPSeZNQ" x="11484" y="7920" width="6719" height="1824"/>
+ </children>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_78anxZ_dEeSMStbbPSeZNQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_78anxp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_78anx5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_78anyJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_78anyZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_78anyp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_78any5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_78anzJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_78anzZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_78anzp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_78anz5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_78an0J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_78an0Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_78an0p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_78an05_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_78an1J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_78an1Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_78an1p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_78an15_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_78an2J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_78an2Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_78an2p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_78an25_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_78an3J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_78an3Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_78an3p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_78an35_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_78an4J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_78an4Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_78an4p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_78an45_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_78an5J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_78an5Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_78an5p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_78an55_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_78an6J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_78an6Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_78an6p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_78an65_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_78an7J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_78an7Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_78an7p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_78an75_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_78an8J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_78an8Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_78an8p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_78an85_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_78an9J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_78an9Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_78an9p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_78an95_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_78an-J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_78an-Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_78an-p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_78an-5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_78an_J_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_78an_Z_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_78an_p_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_78an_5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_78aoAJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_78aoAZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_78aoAp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_78aoA5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_78aoBJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_78aoBZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_78aoBp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_78aoB5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_78aoCJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_78aoCZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_78aoCp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_78aoC5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_78aoDJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_78aoDZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_78aoDp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_78aoD5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_78aoEJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_78aoEZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_78aoEp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_78aoE5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_78aoFJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_78aoFZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_78aoFp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_78aoF5_dEeSMStbbPSeZNQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <ownedRule xmi:id="_ocpm8J_eEeSMStbbPSeZNQ">
+ <specification xmi:type="uml:OpaqueExpression" xmi:id="_ocqOAJ_eEeSMStbbPSeZNQ">
+ <language></language>
+ <body>Opaque Specification without language</body>
+ </specification>
+ </ownedRule>
+ <packagedElement xmi:type="uml:Class" xmi:id="_8rYmkJ_dEeSMStbbPSeZNQ" name="Class1">
+ <eAnnotations xmi:id="_QWzBQJ_eEeSMStbbPSeZNQ" source="uml2.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_QWzoUJ_eEeSMStbbPSeZNQ" type="Object" name="ObjectDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_RkHI8J_eEeSMStbbPSeZNQ" element="_RkCQcJ_eEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_RkHwAJ_eEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_RkHwAZ_eEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_RkHwAp_eEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_RkHwA5_eEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_RkHwBJ_eEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_RkIXEJ_eEeSMStbbPSeZNQ" type="ValueSpecification"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_RkIXEZ_eEeSMStbbPSeZNQ" visible="false" type="TaggedValueSet"/>
+ <children xmi:type="notation:ListCompartment" xmi:id="_RkIXEp_eEeSMStbbPSeZNQ" type="SlotCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RkHI8Z_eEeSMStbbPSeZNQ" x="8572" y="5847"/>
+ </children>
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_-pTr0J_dEeSMStbbPSeZNQ" name="attribute1" visibility="private" type="_J3whQJ_eEeSMStbbPSeZNQ">
+ <defaultValue xmi:type="uml:InstanceValue" xmi:id="_ZK1CsJ_eEeSMStbbPSeZNQ" type="_J3whQJ_eEeSMStbbPSeZNQ" instance="_RkCQcJ_eEeSMStbbPSeZNQ"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_J3whQJ_eEeSMStbbPSeZNQ" name="Class2">
+ <ownedAttribute xmi:id="_KSLzcJ_eEeSMStbbPSeZNQ" name="attribute1" visibility="private">
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:InstanceSpecification" xmi:id="_RkCQcJ_eEeSMStbbPSeZNQ" name="Class2Instance" classifier="_J3whQJ_eEeSMStbbPSeZNQ">
+ <slot xmi:id="_WdM-0J_eEeSMStbbPSeZNQ" definingFeature="_KSLzcJ_eEeSMStbbPSeZNQ">
+ <value xmi:type="uml:OpaqueExpression" xmi:id="_XNd-IJ_eEeSMStbbPSeZNQ">
+ <language></language>
+ <body>Hello, World!</body>
+ </value>
+ </slot>
+ </packagedElement>
+ <profileApplication xmi:id="_78aoGJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_78aoGZ_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_78aoGp_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_78aoG5_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_78aoHJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_78aoHZ_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+ </uml:Model>
+ <Default:MetaConstraint xmi:id="_0-Mb8J_eEeSMStbbPSeZNQ" base_Constraint="_ocpm8J_eEeSMStbbPSeZNQ"/>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/Blank Package.emx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/Blank Package.emx
new file mode 100644
index 0000000..1a3353f
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/Blank Package.emx
@@ -0,0 +1,259 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.model" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:TestProfile="http:///schemas/TestProfile/_m-0zgJ_dEeSMStbbPSeZNQ/1" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xsi:schemaLocation="http:///schemas/TestProfile/_m-0zgJ_dEeSMStbbPSeZNQ/1 TestProfile%20-%20Fragments.epx#_m-2BoJ_dEeSMStbbPSeZNQ?TestProfile/TestProfile?">
+ <uml:Model xmi:id="_NBlOZp_dEeSMStbbPSeZNQ" name="Blank Package">
+ <eAnnotations xmi:id="_z3dS0Z_dEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragments">
+ <references xmi:type="uml:Package" href="ModelFragment_1.efx#_tz3_wJ_dEeSMStbbPSeZNQ?Blank%20Package/Fragment1?"/>
+ <references xmi:type="uml:Package" href="ModelFragment_2.efx#_uU8FcJ_dEeSMStbbPSeZNQ?Blank%20Package/Fragment2?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_NBlOZ5_dEeSMStbbPSeZNQ" source="uml2.diagrams" references="_NBlOaJ_dEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_NBlOaJ_dEeSMStbbPSeZNQ" type="Class" name="Main">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_N51FAJ_dEeSMStbbPSeZNQ" element="_N5yowJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_N52TIJ_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_N52TIZ_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N52TIp_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N52TI5_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N526MJ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_N526MZ_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_N526Mp_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_N526M5_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_N53hQJ_dEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N51FAZ_dEeSMStbbPSeZNQ" x="3696" y="5676"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_N9MiEJ_dEeSMStbbPSeZNQ" element="_N9LT8J_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_N9NJIJ_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_N9NJIZ_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N9NJIp_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N9NwMJ_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_N9NwMZ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_N9NwMp_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_N9NwM5_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_N9NwNJ_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_N9OXQJ_dEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_N9MiEZ_dEeSMStbbPSeZNQ" x="9636" y="5940"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_OBcv8J_dEeSMStbbPSeZNQ" element="_OBbh0J_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OBcv8p_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_OBcv85_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OBdXAJ_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OBdXAZ_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OBdXAp_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OBdXA5_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OBd-EJ_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OBd-EZ_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_OBd-Ep_dEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OBcv8Z_dEeSMStbbPSeZNQ" x="14075" y="5080"/>
+ </children>
+ <children xmi:type="umlnotation:UMLClassifierShape" xmi:id="_OQWHkJ_dEeSMStbbPSeZNQ" element="_OQU5cJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label" useClassifierShape="true">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OQWHkp_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_OQWHk5_dEeSMStbbPSeZNQ" width="530" height="530"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OQWuoJ_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OQWuoZ_dEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OQWuop_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OQWuo5_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OQWupJ_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OQXVsJ_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_OQXVsZ_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OQWHkZ_dEeSMStbbPSeZNQ" x="14388" y="8844"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_tz84QJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_tz9fUJ_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_tz9fUZ_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_tz9fUp_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_tz9fU5_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_tz9fVJ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_tz9fVZ_dEeSMStbbPSeZNQ" type="PackageContents" canonical="false"/>
+ <element xmi:type="uml:Package" href="ModelFragment_1.efx#_tz3_wJ_dEeSMStbbPSeZNQ?Blank%20Package/Fragment1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tz84QZ_dEeSMStbbPSeZNQ" x="2508" y="8316" width="7805" height="4233"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_uVA98J_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_uVA98p_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_uVA985_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uVBlAJ_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uVBlAZ_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_uVBlAp_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_uVBlA5_dEeSMStbbPSeZNQ" type="PackageContents" canonical="false">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_vn7-YJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vn8lcJ_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_vn8lcZ_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vn8lcp_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vn8lc5_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vn8ldJ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_vn9MgJ_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_vn9MgZ_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_vn9Mgp_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_vn9Mg5_dEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_2.efx#_vn4UAJ_dEeSMStbbPSeZNQ?Blank%20Package/Fragment2/Class1?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vn7-YZ_dEeSMStbbPSeZNQ" x="715" y="400"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_vs5W4J_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_vs598J_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_vs598Z_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vs598p_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vs5985_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_vs599J_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_vs6lAJ_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_vs6lAZ_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_vs6lAp_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_vs6lA5_dEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="ModelFragment_2.efx#_vs1sgJ_dEeSMStbbPSeZNQ?Blank%20Package/Fragment2/Class2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vs5W4Z_dEeSMStbbPSeZNQ" x="5454" y="300"/>
+ </children>
+ </children>
+ <element xmi:type="uml:Package" href="ModelFragment_2.efx#_uU8FcJ_dEeSMStbbPSeZNQ?Blank%20Package/Fragment2?"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uVA98Z_dEeSMStbbPSeZNQ" x="3300" y="924" width="9180" height="4206"/>
+ </children>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_OiN6sJ_dEeSMStbbPSeZNQ" element="_OiMFgJ_dEeSMStbbPSeZNQ" source="_OBcv8J_dEeSMStbbPSeZNQ" target="_N9MiEJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_OiN6sp_dEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OiN6tJ_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_OiOhwJ_dEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OiN6s5_dEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OiN6sZ_dEeSMStbbPSeZNQ" points="[-37, 3, 130, 2]$[-204, 18, -37, 17]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_sUq20J_dEeSMStbbPSeZNQ" element="_sUkwMJ_dEeSMStbbPSeZNQ" source="_OBcv8J_dEeSMStbbPSeZNQ" target="_OQWHkJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_sUrd4J_dEeSMStbbPSeZNQ" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_sUrd4p_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_sUrd45_dEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sUrd4Z_dEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_sUq20Z_dEeSMStbbPSeZNQ" points="[10, 41, 19, -91]$[12, 162, 21, 30]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <eAnnotations xmi:id="_NBlOaZ_dEeSMStbbPSeZNQ" source="com.ibm.xtools.common.ui.reduction.editingCapabilities">
+ <details xmi:id="_NBlOap_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunctionTemplateParameter" value="1"/>
+ <details xmi:id="_NBlOa5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPrimitiveTypeTemplateParameter" value="1"/>
+ <details xmi:id="_NBlObJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport1" value="1"/>
+ <details xmi:id="_NBlObZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFragment" value="1"/>
+ <details xmi:id="_NBlObp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBElementImport2" value="1"/>
+ <details xmi:id="_NBlOb5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBArtifact" value="1"/>
+ <details xmi:id="_NBlOcJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterfaceTemplateParameter" value="1"/>
+ <details xmi:id="_NBlOcZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFunction" value="1"/>
+ <details xmi:id="_NBlOcp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfile" value="1"/>
+ <details xmi:id="_NBlOc5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverview" value="1"/>
+ <details xmi:id="_NBlOdJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStructureDiagram" value="1"/>
+ <details xmi:id="_NBlOdZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSubsystem" value="1"/>
+ <details xmi:id="_NBlOdp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSignal" value="1"/>
+ <details xmi:id="_NBlOd5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteractionOverviewDiagram" value="1"/>
+ <details xmi:id="_NBlOeJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClass" value="1"/>
+ <details xmi:id="_NBlOeZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship1" value="1"/>
+ <details xmi:id="_NBlOep_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship2" value="1"/>
+ <details xmi:id="_NBlOe5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine1" value="1"/>
+ <details xmi:id="_NBlOfJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRelationship3" value="1"/>
+ <details xmi:id="_NBlOfZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateMachine2" value="1"/>
+ <details xmi:id="_NBlOfp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponent" value="1"/>
+ <details xmi:id="_NBlOf5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentSpecification" value="1"/>
+ <details xmi:id="_NBlOgJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity1" value="1"/>
+ <details xmi:id="_NBlOgZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAbstractionRelation" value="1"/>
+ <details xmi:id="_NBlOgp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity2" value="1"/>
+ <details xmi:id="_NBlOg5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity3" value="1"/>
+ <details xmi:id="_NBlOhJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBAction" value="1"/>
+ <details xmi:id="_NBlOhZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivityDiagram" value="1"/>
+ <details xmi:id="_NBlOhp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassTemplateParameter" value="1"/>
+ <details xmi:id="_NBlOh5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBActivity4" value="1"/>
+ <details xmi:id="_NBlOiJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackage" value="1"/>
+ <details xmi:id="_NBlOiZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTemplate" value="1"/>
+ <details xmi:id="_NBlOip_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedDeployment1" value="1"/>
+ <details xmi:id="_NBlOi5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType1" value="1"/>
+ <details xmi:id="_NBlOjJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence1" value="1"/>
+ <details xmi:id="_NBlOjZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaborationUse" value="1"/>
+ <details xmi:id="_NBlOjp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSpecificInstanceType2" value="1"/>
+ <details xmi:id="_NBlOj5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequence2" value="1"/>
+ <details xmi:id="_NBlOkJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBSequenceDiagram" value="1"/>
+ <details xmi:id="_NBlOkZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBObjectDiagram" value="1"/>
+ <details xmi:id="_NBlOkp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTiming" value="1"/>
+ <details xmi:id="_NBlOk5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDependancy" value="1"/>
+ <details xmi:id="_NBlOlJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBLifeLine" value="1"/>
+ <details xmi:id="_NBlOlZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentTemplateParameter" value="1"/>
+ <details xmi:id="_NBlOlp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUsage" value="1"/>
+ <details xmi:id="_NBlOl5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBFreeFormDiagram" value="1"/>
+ <details xmi:id="_NBlOmJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInstance" value="1"/>
+ <details xmi:id="_NBlOmZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedArtifact" value="1"/>
+ <details xmi:id="_NBlOmp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComponentDiagram" value="1"/>
+ <details xmi:id="_NBlOm5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent1" value="1"/>
+ <details xmi:id="_NBlOnJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes1" value="1"/>
+ <details xmi:id="_NBlOnZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBEvent2" value="1"/>
+ <details xmi:id="_NBlOnp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes2" value="1"/>
+ <details xmi:id="_NBlOn5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes3" value="1"/>
+ <details xmi:id="_NBlOoJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTypes4" value="1"/>
+ <details xmi:id="_NBlOoZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBTimingDiagram" value="1"/>
+ <details xmi:id="_NBlOop_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunicationDiagram" value="1"/>
+ <details xmi:id="_NBlOo5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBConstraint" value="1"/>
+ <details xmi:id="_NBlOpJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedClass" value="1"/>
+ <details xmi:id="_NBlOpZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBProfileApplication" value="1"/>
+ <details xmi:id="_NBlOpp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBPackageTemplateParameter" value="1"/>
+ <details xmi:id="_NBlOp5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStereotypedComponent" value="1"/>
+ <details xmi:id="_NBlOqJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInterface" value="1"/>
+ <details xmi:id="_NBlOqZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInformationFlow" value="1"/>
+ <details xmi:id="_NBlOqp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment1" value="1"/>
+ <details xmi:id="_NBlOq5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment2" value="1"/>
+ <details xmi:id="_NBlOrJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBComment3" value="1"/>
+ <details xmi:id="_NBlOrZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCollaboration" value="1"/>
+ <details xmi:id="_NBlOrp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure1" value="1"/>
+ <details xmi:id="_NBlOr5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBRealization" value="1"/>
+ <details xmi:id="_NBlOsJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBStateChartDiagram" value="1"/>
+ <details xmi:id="_NBlOsZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCompositeStructure2" value="1"/>
+ <details xmi:id="_NBlOsp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase1" value="1"/>
+ <details xmi:id="_NBlOs5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCase2" value="1"/>
+ <details xmi:id="_NBlOtJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBClassDiagram" value="1"/>
+ <details xmi:id="_NBlOtZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBUseCaseDiagram" value="1"/>
+ <details xmi:id="_NBlOtp_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment1" value="1"/>
+ <details xmi:id="_NBlOt5_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeployment2" value="1"/>
+ <details xmi:id="_NBlOuJ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBDeploymentDiagram" value="1"/>
+ <details xmi:id="_NBlOuZ_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBInteraction" value="1"/>
+ <details xmi:id="_NBlOup_dEeSMStbbPSeZNQ" key="com.ibm.xtools.activities.umlBBCommunication" value="1"/>
+ </eAnnotations>
+ <packageImport xmi:id="_NBlOu5_dEeSMStbbPSeZNQ">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Class" xmi:id="_N5yowJ_dEeSMStbbPSeZNQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_N9LT8J_dEeSMStbbPSeZNQ" name="Class2"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_OBbh0J_dEeSMStbbPSeZNQ" name="Class3" clientDependency="_sUkwMJ_dEeSMStbbPSeZNQ">
+ <generalization xmi:id="_OiMFgJ_dEeSMStbbPSeZNQ" general="_N9LT8J_dEeSMStbbPSeZNQ"/>
+ <ownedAttribute xmi:id="_OxY_IJ_dEeSMStbbPSeZNQ" name="attribute1" visibility="private"/>
+ <ownedAttribute xmi:id="_OzZxUJ_dEeSMStbbPSeZNQ" name="attribute2" visibility="private"/>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Interface" xmi:id="_OQU5cJ_dEeSMStbbPSeZNQ" name="Interface1"/>
+ <packagedElement xmi:type="uml:Realization" xmi:id="_sUkwMJ_dEeSMStbbPSeZNQ" supplier="_OQU5cJ_dEeSMStbbPSeZNQ" client="_OBbh0J_dEeSMStbbPSeZNQ"/>
+ <packagedElement xmi:type="uml:Package" href="ModelFragment_1.efx#_tz3_wJ_dEeSMStbbPSeZNQ?Blank%20Package/Fragment1?"/>
+ <packagedElement xmi:type="uml:Package" href="ModelFragment_2.efx#_uU8FcJ_dEeSMStbbPSeZNQ?Blank%20Package/Fragment2?"/>
+ <profileApplication xmi:id="_NBlOvJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_NBlOvZ_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Standard.profile.uml#_yzU58YinEdqtvbnfB2L_5w"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+ </profileApplication>
+ <profileApplication xmi:id="_NBlOvp_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_NBlOv5_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Default.epx#_fNwoAAqoEd6-N_NOT9vsCA?Default/Default?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Default.epx#_a_S3wNWLEdiy4IqP8whjFA?Default?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_NBlOwJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_NBlOwZ_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_IrdAUMmBEdqBcN1R6EvWUw?Deployment/Deployment?"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/Deployment.epx#_vjbuwOvHEdiDX5bji0iVSA?Deployment?"/>
+ </profileApplication>
+ <profileApplication xmi:id="_qBM_YJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_qBM_YZ_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="TestProfile%20-%20Fragments.epx#_m-2BoJ_dEeSMStbbPSeZNQ?TestProfile/TestProfile?"/>
+ </eAnnotations>
+ <appliedProfile href="TestProfile%20-%20Fragments.epx#_RSxWwJ_dEeSMStbbPSeZNQ?TestProfile?"/>
+ </profileApplication>
+ </uml:Model>
+ <TestProfile:Stereotype1 xmi:id="_q6-gAJ_dEeSMStbbPSeZNQ" base_Class="_N5yowJ_dEeSMStbbPSeZNQ"/>
+ <TestProfile:Stereotype1 xmi:id="_rX5skJ_dEeSMStbbPSeZNQ" base_Class="_N9LT8J_dEeSMStbbPSeZNQ"/>
+ <TestProfile:Stereotype2 xmi:id="_r9K80J_dEeSMStbbPSeZNQ" base_Class="_OBbh0J_dEeSMStbbPSeZNQ"/>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/ModelFragment_1.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/ModelFragment_1.efx
new file mode 100644
index 0000000..0295914
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/ModelFragment_1.efx
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<uml:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_tz3_wJ_dEeSMStbbPSeZNQ" name="Fragment1">
+ <eAnnotations xmi:id="_z3dS0J_dEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Model" href="Blank%20Package.emx#_NBlOZp_dEeSMStbbPSeZNQ?Blank%20Package?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_tz3_wZ_dEeSMStbbPSeZNQ" source="uml2.diagrams" references="_tz4m0J_dEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_tz4m0J_dEeSMStbbPSeZNQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+</uml:Package>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/ModelFragment_2.efx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/ModelFragment_2.efx
new file mode 100644
index 0000000..926e50a
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/ModelFragment_2.efx
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.fragment" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.mmi.ui.signatures.diagram" version="7.0.0"><feature description="" name="Rational Modeling Platform (com.ibm.xtools.rmp)" url="" version="7.0.0"/></signature>?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:TestProfile="http:///schemas/TestProfile/_m-0zgJ_dEeSMStbbPSeZNQ/1" xmlns:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xsi:schemaLocation="http:///schemas/TestProfile/_m-0zgJ_dEeSMStbbPSeZNQ/1 TestProfile%20-%20Fragments.epx#_m-2BoJ_dEeSMStbbPSeZNQ?TestProfile/TestProfile?">
+ <uml:Package xmi:id="_uU8FcJ_dEeSMStbbPSeZNQ" name="Fragment2">
+ <eAnnotations xmi:id="_0nVQkZ_dEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragments"/>
+ <eAnnotations xmi:id="_0nVQkJ_dEeSMStbbPSeZNQ" source="com.ibm.xtools.uml.msl.fragmentContainer">
+ <references xmi:type="uml:Model" href="Blank%20Package.emx#_NBlOZp_dEeSMStbbPSeZNQ?Blank%20Package?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_uU8sgJ_dEeSMStbbPSeZNQ" source="uml2.diagrams" references="_uU8sgZ_dEeSMStbbPSeZNQ">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_uU8sgZ_dEeSMStbbPSeZNQ" type="Freeform" name="Main">
+ <element xsi:nil="true"/>
+ </contents>
+ </eAnnotations>
+ <packagedElement xmi:type="uml:Class" xmi:id="_vn4UAJ_dEeSMStbbPSeZNQ" name="Class1"/>
+ <packagedElement xmi:type="uml:Class" xmi:id="_vs1sgJ_dEeSMStbbPSeZNQ" name="Class2"/>
+ </uml:Package>
+ <TestProfile:Stereotype1 xmi:id="_wPaOEJ_dEeSMStbbPSeZNQ" base_Class="_vn4UAJ_dEeSMStbbPSeZNQ"/>
+ <TestProfile:Stereotype2 xmi:id="_wPaOEZ_dEeSMStbbPSeZNQ" base_Class="_vn4UAJ_dEeSMStbbPSeZNQ"/>
+ <TestProfile:Stereotype1 xmi:id="_wq9hoJ_dEeSMStbbPSeZNQ" base_Class="_vs1sgJ_dEeSMStbbPSeZNQ"/>
+</xmi:XMI>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/TestProfile - Fragments.epx b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/TestProfile - Fragments.epx
new file mode 100644
index 0000000..722c563
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/profile+fragments/TestProfile - Fragments.epx
@@ -0,0 +1,248 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--xtools2_universal_type_manager-->
+<?com.ibm.xtools.emf.core.signature <signature id="com.ibm.xtools.uml.msl.profile" version="7.0.0"><feature description="" name="com.ibm.xtools.ruml.feature" url="" version="7.0.0"/></signature>?>
+<uml:Profile 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:uml="http://www.eclipse.org/uml2/3.0.0/UML" xmlns:umlnotation="http://www.ibm.com/xtools/1.5.3/Umlnotation" xmi:id="_RSxWwJ_dEeSMStbbPSeZNQ" name="TestProfile" metamodelReference="_RSyk4Z_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_RTERsJ_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <contents xmi:type="ecore:EPackage" xmi:id="_m-2BoJ_dEeSMStbbPSeZNQ" name="TestProfile" nsURI="http:///schemas/TestProfile/_m-0zgJ_dEeSMStbbPSeZNQ/1" nsPrefix="TestProfile">
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_m-2BoZ_dEeSMStbbPSeZNQ" name="Stereotype1">
+ <eAnnotations xmi:id="_m-2Bop_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_SIsSIJ_dEeSMStbbPSeZNQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_m-2Bo5_dEeSMStbbPSeZNQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_m-2BpZ_dEeSMStbbPSeZNQ" name="attribute1" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_m-2Bp5_dEeSMStbbPSeZNQ" name="attribute2" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_m-2BqZ_dEeSMStbbPSeZNQ" name="Stereotype2">
+ <eAnnotations xmi:id="_m-2Bqp_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_SMP8cJ_dEeSMStbbPSeZNQ"/>
+ <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_m-2Bq5_dEeSMStbbPSeZNQ" name="base_Class" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/3.0.0/UML#//Class"/>
+ </eStructuralFeatures>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_m-2BrZ_dEeSMStbbPSeZNQ" name="attribute1" ordered="false" lowerBound="1" eType="_m-2BsZ_dEeSMStbbPSeZNQ"/>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_m-2Br5_dEeSMStbbPSeZNQ" name="attribute2" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EEnum" xmi:id="_m-2BsZ_dEeSMStbbPSeZNQ" name="Enumeration1">
+ <eAnnotations xmi:id="_m-2Bsp_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_ad1_MJ_dEeSMStbbPSeZNQ"/>
+ <eLiterals xmi:id="_m-2Bs5_dEeSMStbbPSeZNQ" name="EnumerationLiteral1"/>
+ <eLiterals xmi:id="_m-2BtJ_dEeSMStbbPSeZNQ" name="EnumerationLiteral2" value="1"/>
+ </eClassifiers>
+ <eClassifiers xmi:type="ecore:EClass" xmi:id="_m-2BtZ_dEeSMStbbPSeZNQ" name="Class1">
+ <eAnnotations xmi:id="_m-2Btp_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_aHUVkJ_dEeSMStbbPSeZNQ"/>
+ <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_m-2Bt5_dEeSMStbbPSeZNQ" name="attribute1" ordered="false" lowerBound="1">
+ <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+ </eStructuralFeatures>
+ </eClassifiers>
+ </contents>
+ <contents xmi:type="ecore:EPackage" xmi:id="_RTERsZ_dEeSMStbbPSeZNQ" name="TestProfile" nsURI="http:///schemas/TestProfile/_RTDqoJ_dEeSMStbbPSeZNQ/0" nsPrefix="TestProfile"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_R3o-YJ_dEeSMStbbPSeZNQ" source="uml2.profile.diagrams">
+ <contents xmi:type="umlnotation:UMLDiagram" xmi:id="_R3o-YZ_dEeSMStbbPSeZNQ" type="Class" name="ClassDiagram1">
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_SIvVcJ_dEeSMStbbPSeZNQ" element="_SIsSIJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_SIvVcp_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_SIvVc5_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SIv8gJ_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SIv8gZ_dEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SIv8gp_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SIv8g5_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_SIv8hJ_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_SIwjkJ_dEeSMStbbPSeZNQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SIvVcZ_dEeSMStbbPSeZNQ" x="6204" y="9900"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_SMSYsJ_dEeSMStbbPSeZNQ" element="_SMP8cJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_SMS_wJ_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_SMS_wZ_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SMS_wp_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SMS_w5_dEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SMS_xJ_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_SMS_xZ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_SMTm0J_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_SMTm0Z_dEeSMStbbPSeZNQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SMSYsZ_dEeSMStbbPSeZNQ" x="16896" y="10824"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_TfXKIJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_TfXxMJ_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_TfXxMZ_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TfXxMp_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TfXxM5_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_TfYYQJ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_TfYYQZ_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_TfYYQp_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_TfYYQ5_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_TfY_UJ_dEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TfXKIZ_dEeSMStbbPSeZNQ" x="10133" y="3122"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_aHZOEJ_dEeSMStbbPSeZNQ" element="_aHUVkJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_aHZ1IZ_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_aHZ1Ip_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_aHZ1I5_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_aHacMJ_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_aHacMZ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_aHacMp_dEeSMStbbPSeZNQ" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_aHacM5_dEeSMStbbPSeZNQ" type="OperationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_aHbDQJ_dEeSMStbbPSeZNQ" visible="false" type="SignalCompartment"/>
+ <children xmi:type="umlnotation:UMLShapeCompartment" xmi:id="_aHbDQZ_dEeSMStbbPSeZNQ" visible="false" type="StructureCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aHZ1IJ_dEeSMStbbPSeZNQ" x="18348" y="4224"/>
+ </children>
+ <children xmi:type="umlnotation:UMLShape" xmi:id="_ad5CgJ_dEeSMStbbPSeZNQ" element="_ad1_MJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" transparency="0" lineColor="14263149" lineWidth="1" showStereotype="Label">
+ <children xmi:type="notation:DecorationNode" xmi:id="_ad5Cgp_dEeSMStbbPSeZNQ" type="ImageCompartment">
+ <layoutConstraint xmi:type="notation:Size" xmi:id="_ad5pkJ_dEeSMStbbPSeZNQ" width="1320" height="1320"/>
+ </children>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ad5pkZ_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ad5pkp_dEeSMStbbPSeZNQ" type="Kind"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ad5pk5_dEeSMStbbPSeZNQ" type="Name"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_ad5plJ_dEeSMStbbPSeZNQ" type="Parent"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ad6QoJ_dEeSMStbbPSeZNQ" type="EnumerationCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ad6QoZ_dEeSMStbbPSeZNQ" visible="false" type="AttributeCompartment"/>
+ <children xmi:type="notation:SemanticListCompartment" xmi:id="_ad6Qop_dEeSMStbbPSeZNQ" visible="false" type="OperationCompartment"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ad5CgZ_dEeSMStbbPSeZNQ" x="18876" y="7524"/>
+ </children>
+ <element xsi:nil="true"/>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_UBkfUJ_dEeSMStbbPSeZNQ" element="_UBdxoJ_dEeSMStbbPSeZNQ" source="_SMSYsJ_dEeSMStbbPSeZNQ" target="_TfXKIJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UBkfUp_dEeSMStbbPSeZNQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UBkfVJ_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UBlGYJ_dEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UBkfU5_dEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_UBlGYZ_dEeSMStbbPSeZNQ" type="ToMultiplicityLabel" element="_UBeYsZ_dEeSMStbbPSeZNQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UBlGY5_dEeSMStbbPSeZNQ" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UBlGYp_dEeSMStbbPSeZNQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UBkfUZ_dEeSMStbbPSeZNQ" points="[-16, -24, 196, 224]$[-117, -284, 95, -36]"/>
+ </edges>
+ <edges xmi:type="umlnotation:UMLConnector" xmi:id="_UKtNMJ_dEeSMStbbPSeZNQ" element="_UKoUsJ_dEeSMStbbPSeZNQ" source="_SIvVcJ_dEeSMStbbPSeZNQ" target="_TfXKIJ_dEeSMStbbPSeZNQ" fontName="Segoe UI" fontHeight="8" roundedBendpointsRadius="4" routing="Rectilinear" lineColor="8421504" lineWidth="1" showStereotype="Text">
+ <children xmi:type="notation:DecorationNode" xmi:id="_UKtNMp_dEeSMStbbPSeZNQ" visible="false" type="NameLabel">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UKtNNJ_dEeSMStbbPSeZNQ" type="Stereotype"/>
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UKt0QJ_dEeSMStbbPSeZNQ" type="Name"/>
+ <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UKtNM5_dEeSMStbbPSeZNQ" y="-186"/>
+ </children>
+ <children xmi:type="notation:DecorationNode" xmi:id="_UKt0QZ_dEeSMStbbPSeZNQ" type="ToMultiplicityLabel" element="_UKo7wJ_dEeSMStbbPSeZNQ">
+ <children xmi:type="notation:BasicDecorationNode" xmi:id="_UKt0Q5_dEeSMStbbPSeZNQ" type="ExtensionRequired"/>
+ <layoutConstraint xmi:type="notation:Location" xmi:id="_UKt0Qp_dEeSMStbbPSeZNQ" y="396"/>
+ </children>
+ <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UKtNMZ_dEeSMStbbPSeZNQ" points="[22, -24, -170, 189]$[188, -146, -4, 67]"/>
+ </edges>
+ </contents>
+ </eAnnotations>
+ <packageImport xmi:id="_RSyk4J_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-2osJ_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-2osZ_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+ <packageImport xmi:id="_RSyk4Z_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-2osp_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-2os5_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
+ </packageImport>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_SIsSIJ_dEeSMStbbPSeZNQ" name="Stereotype1">
+ <eAnnotations xmi:id="_m-2otJ_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-2otZ_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_UKo7wJ_dEeSMStbbPSeZNQ" name="base_Class" association="_UKoUsJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-2otp_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3PwJ_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_U3jFEJ_dEeSMStbbPSeZNQ" name="attribute1" visibility="public">
+ <eAnnotations xmi:id="_m-3PwZ_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3Pwp_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_U5F9MJ_dEeSMStbbPSeZNQ" name="attribute2" visibility="public">
+ <eAnnotations xmi:id="_m-3Pw5_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3PxJ_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Stereotype" xmi:id="_SMP8cJ_dEeSMStbbPSeZNQ" name="Stereotype2">
+ <eAnnotations xmi:id="_m-3PxZ_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3Pxp_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_UBeYsZ_dEeSMStbbPSeZNQ" name="base_Class" association="_UBdxoJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-3Px5_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3PyJ_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_UpWRAJ_dEeSMStbbPSeZNQ" name="attribute1" visibility="public" type="_ad1_MJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-3PyZ_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3Pyp_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedAttribute>
+ <ownedAttribute xmi:id="_UrlssJ_dEeSMStbbPSeZNQ" name="attribute2" visibility="public">
+ <eAnnotations xmi:id="_m-3Py5_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3PzJ_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_UBdxoJ_dEeSMStbbPSeZNQ" name="Class_Stereotype2" memberEnd="_UBeYsJ_dEeSMStbbPSeZNQ _UBeYsZ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-3PzZ_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3Pzp_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_UBeYsJ_dEeSMStbbPSeZNQ" name="extension_Stereotype2" type="_SMP8cJ_dEeSMStbbPSeZNQ" aggregation="composite" association="_UBdxoJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-320J_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-320Z_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Extension" xmi:id="_UKoUsJ_dEeSMStbbPSeZNQ" name="Class_Stereotype1" memberEnd="_UKoUsZ_dEeSMStbbPSeZNQ _UKo7wJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-320p_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3205_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_UKoUsZ_dEeSMStbbPSeZNQ" name="extension_Stereotype1" type="_SIsSIJ_dEeSMStbbPSeZNQ" aggregation="composite" association="_UKoUsJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-321J_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-321Z_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedEnd>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Class" xmi:id="_aHUVkJ_dEeSMStbbPSeZNQ" name="Class1">
+ <eAnnotations xmi:id="_m-321p_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3215_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedAttribute xmi:id="_a1rQYJ_dEeSMStbbPSeZNQ" name="attribute1" visibility="public">
+ <eAnnotations xmi:id="_m-322J_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-322Z_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+ </ownedAttribute>
+ </packagedElement>
+ <packagedElement xmi:type="uml:Enumeration" xmi:id="_ad1_MJ_dEeSMStbbPSeZNQ" name="Enumeration1">
+ <eAnnotations xmi:id="_m-322p_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3225_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <ownedLiteral xmi:id="_dMG8QJ_dEeSMStbbPSeZNQ" name="EnumerationLiteral1" classifier="_ad1_MJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-323J_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-323Z_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedLiteral>
+ <ownedLiteral xmi:id="_deDA0J_dEeSMStbbPSeZNQ" name="EnumerationLiteral2" classifier="_ad1_MJ_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_m-323p_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-3235_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ </ownedLiteral>
+ </packagedElement>
+ <profileApplication xmi:id="_RSyk4p_dEeSMStbbPSeZNQ">
+ <eAnnotations xmi:id="_RSzL8J_dEeSMStbbPSeZNQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="pathmap://UML2_MSL_PROFILES/ProfileBase.epx#_IfFYQMmBEdqBcN1R6EvWUw?ProfileBase/ProfileBase?"/>
+ </eAnnotations>
+ <eAnnotations xmi:id="_m-324J_dEeSMStbbPSeZNQ" source="uml2.extensions">
+ <details xmi:id="_m-4d4J_dEeSMStbbPSeZNQ" key="addedInVersion" value="1"/>
+ </eAnnotations>
+ <appliedProfile href="pathmap://UML2_MSL_PROFILES/ProfileBase.epx#_bFUAMdWLEdiy4IqP8whjFA?ProfileBase?"/>
+ </profileApplication>
+</uml:Profile>
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/traces/asserttraces.qvto b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/traces/asserttraces.qvto
new file mode 100644
index 0000000..22661ac
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/resources/traces/asserttraces.qvto
@@ -0,0 +1,33 @@
+/*****************************************************************************
+ * Copyright (c) 2016 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+import org.eclipse.papyrus.interoperability.common.utils.Traces;
+
+modeltype uml "strict" uses 'http://www.eclipse.org/uml2/5.0.0/UML';
+modeltype notation "strict" uses 'http://www.eclipse.org/gmf/runtime/1.0.2/notation';
+modeltype sash "strict" uses 'http://www.eclipse.org/papyrus/0.7.0/sashdi';
+modeltype config "strict" uses 'http:///RSAToPapyrusParameters.ecore';
+
+transformation PapyrusRTDiagrams(inout semantics : uml, inout graphics : notation, out di : sash, in param : config);
+
+main() {
+ graphics.rootObjects()[notation::Diagram].map checkTraces();
+}
+
+mapping inout notation::Diagram::checkTraces()
+{
+ var source := self.traceFrom('notation::Diagram');
+ assert fatal (not source.oclIsUndefined() and
+ source.oclIsKindOf(notation::Diagram) and
+ source <> self);
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/Activator.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/Activator.java
new file mode 100644
index 0000000..5eb9bb0
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/Activator.java
@@ -0,0 +1,68 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thibault Le Ouay (Sherpa Engineering) t.leouay@sherpa-eng.com - Initial API and implementation
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests;
+
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+public class Activator extends AbstractUIPlugin {
+
+ // The plug-in ID
+ public static final String PLUGIN_ID = "org.eclipse.papyrus.interoperability.rsa.tests"; //$NON-NLS-1$
+
+ public static LogHelper log;
+
+ // The shared instance
+ private static Activator plugin;
+
+ /**
+ * The constructor
+ */
+ public Activator() {
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void start(BundleContext context) throws Exception {
+ super.start(context);
+ plugin = this;
+ log = new LogHelper(this);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+ */
+ @Override
+ public void stop(BundleContext context) throws Exception {
+ plugin = null;
+ super.stop(context);
+ }
+
+ /**
+ * Returns the shared instance
+ *
+ * @return the shared instance
+ */
+ public static Activator getDefault() {
+ return plugin;
+ }
+
+
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/AllTests.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/AllTests.java
new file mode 100644
index 0000000..84f2c33
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/AllTests.java
@@ -0,0 +1,41 @@
+/*****************************************************************************
+ * Copyright (c) 2014, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thibault Le Ouay (Sherpa Engineering) t.leouay@sherpa-eng.com - Initial API and implementation
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr
+ * Christian W. Damus - bugs 496439, 461980
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests;
+
+import org.eclipse.papyrus.interoperability.rsa.tests.concurrent.ThreadSafeResourceSetTest;
+import org.eclipse.papyrus.interoperability.rsa.tests.qvt.BatchImportTest;
+import org.eclipse.papyrus.interoperability.rsa.tests.qvt.ImportDiagramTest;
+import org.eclipse.papyrus.interoperability.rsa.tests.qvt.ImportModelsTest;
+import org.eclipse.papyrus.interoperability.rsa.tests.qvt.ImportProfilesTest;
+import org.eclipse.papyrus.interoperability.rsa.tests.qvt.TracesTest;
+import org.eclipse.papyrus.interoperability.rsa.tests.regression.RegressionTests;
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+
+
+@RunWith(Suite.class)
+@SuiteClasses({
+ ImportDiagramTest.class,
+ ImportModelsTest.class,
+ BatchImportTest.class,
+ ImportProfilesTest.class,
+ TracesTest.class,
+ ThreadSafeResourceSetTest.class,
+ RegressionTests.class,
+})
+public class AllTests {
+ // Test suite
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/PostProcessor.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/PostProcessor.java
new file mode 100644
index 0000000..7d765b4
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/PostProcessor.java
@@ -0,0 +1,183 @@
+/*****************************************************************************
+ * Copyright (c) 2017 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.tests;
+
+import java.util.Collections;
+import java.util.Set;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.BasicDiagnostic;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.m2m.qvt.oml.ExecutionContext;
+import org.eclipse.m2m.qvt.oml.ExecutionDiagnostic;
+import org.eclipse.m2m.qvt.oml.TransformationExecutor;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ExecutorsPool;
+import org.eclipse.papyrus.interoperability.rsa.internal.extension.PostProcessExtension;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformation;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Package;
+
+/**
+ * An extension for the tests does some recognizable post-processing.
+ * It prepends all element names with "123".
+ */
+public class PostProcessor implements PostProcessExtension {
+ public static boolean isEnabled = false;
+
+ ImportTransformation transformation;
+
+ /**
+ * Initializes me.
+ */
+ public PostProcessor() {
+ super();
+ }
+
+ @Override
+ public Set<EPackage> getAdditionalSourceEPackages() {
+ return Collections.emptySet();
+ }
+
+ @Override
+ public int getNumberOfSteps() {
+ return 0;
+ }
+
+ @Override
+ public void setTransformation(ImportTransformation importTransformation) {
+ if (isEnabled) {
+ this.transformation = importTransformation;
+ }
+ }
+
+ @Override
+ public IStatus postProcess(ExecutionContext context, IProgressMonitor monitor) {
+ ImportTransformation transformation = this.transformation;
+ this.transformation = null;
+
+ if (isEnabled) {
+ return transformation.getInOutUMLModel().getContents().stream()
+ .filter(Package.class::isInstance).map(Package.class::cast)
+ .findFirst()
+ .map(package_ -> {
+ monitor.beginTask("Renaming elements", IProgressMonitor.UNKNOWN);
+
+ package_.setName("123 " + package_.getName());
+ package_.eAllContents().forEachRemaining(eobj -> {
+ if (eobj instanceof NamedElement) {
+ NamedElement named = (NamedElement) eobj;
+ if (named.isSetName()) {
+ named.setName("123 " + named.getName());
+ }
+ }
+ });
+
+ monitor.done();
+
+ return Status.OK_STATUS;
+ })
+ .orElse(Status.CANCEL_STATUS);
+ }
+
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public IStatus executeBefore(ExecutionContext context, IProgressMonitor monitor) {
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public IStatus executeAfter(ExecutionContext context, IProgressMonitor monitor) {
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public void setResourceSet(ResourceSet resourceSet) {
+ // Pass
+ }
+
+ @Override
+ public void setExecutorsPool(ExecutorsPool executorsPool) {
+ // Pass
+ }
+
+ //
+ // Nested types
+ //
+
+ public static class WithQVTo extends PostProcessor {
+ public static boolean isEnabled = false;
+
+ private ExecutorsPool executorsPool;
+
+ /**
+ * Initializes me.
+ */
+ public WithQVTo() {
+ super();
+ }
+
+ @Override
+ public IStatus postProcess(ExecutionContext context, IProgressMonitor monitor) {
+ ImportTransformation transformation = this.transformation;
+ this.transformation = null;
+ ExecutorsPool pool = this.executorsPool;
+ this.executorsPool = null;
+
+ if (isEnabled) {
+ TransformationExecutor exec = pool.getExecutor(URI.createURI("platform:/plugin/org.eclipse.papyrus.interoperability.rsa.tests/resources/bug505330/postprocess.qvto"));
+ exec.loadTransformation(monitor);
+
+ ExecutionDiagnostic result = exec.execute(context, transformation.getInOutUMLModel(), transformation.getInoutNotationModel());
+
+ return BasicDiagnostic.toIStatus(result);
+ }
+
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public IStatus executeBefore(ExecutionContext context, IProgressMonitor monitor) {
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public IStatus executeAfter(ExecutionContext context, IProgressMonitor monitor) {
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public void setResourceSet(ResourceSet resourceSet) {
+ // Pass
+ }
+
+ @Override
+ public void setTransformation(ImportTransformation importTransformation) {
+ if (isEnabled) {
+ this.transformation = importTransformation;
+ }
+ }
+
+ @Override
+ public void setExecutorsPool(ExecutorsPool executorsPool) {
+ this.executorsPool = executorsPool;
+ }
+
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/UML25HandlerExtension.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/UML25HandlerExtension.java
new file mode 100644
index 0000000..c48ee6c
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/UML25HandlerExtension.java
@@ -0,0 +1,153 @@
+/*****************************************************************************
+ * Copyright (c) 2016 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.tests;
+
+import java.util.ArrayList;
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import java.util.function.Predicate;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EModelElement;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.FeatureMap;
+import org.eclipse.emf.ecore.util.FeatureMapUtil;
+import org.eclipse.m2m.qvt.oml.ExecutionContext;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ExecutorsPool;
+import org.eclipse.papyrus.interoperability.rsa.internal.extension.TransformationExtension;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformation;
+import org.eclipse.uml2.uml.Port;
+
+/**
+ * An extension for the tests only that fills in UML 2.2-to-2.5 gaps
+ * from RSA's UML-RT profile (especially for the Port conjugation semantics).
+ */
+public class UML25HandlerExtension implements TransformationExtension {
+ public static boolean isEnabled = false;
+
+ private List<EObject> umlContents = new ArrayList<>();
+
+ /**
+ * Initializes me.
+ */
+ public UML25HandlerExtension() {
+ super();
+ }
+
+ @Override
+ public Set<EPackage> getAdditionalSourceEPackages() {
+ return Collections.emptySet();
+ }
+
+ @Override
+ public int getNumberOfSteps() {
+ return isEnabled ? 1 : 0;
+ }
+
+ @Override
+ public void setTransformation(ImportTransformation importTransformation) {
+ if (isEnabled) {
+ umlContents.addAll(importTransformation.getInOutUMLModel().getContents());
+ }
+ }
+
+ @Override
+ public IStatus executeBefore(ExecutionContext context, IProgressMonitor monitor) {
+ if (isEnabled) {
+ monitor.beginTask("Populating UML 2.5 attributes", 1);
+
+ try {
+ Predicate<Object> isAnElement = EModelElement.class::isInstance;
+ Predicate<Object> isAnEObject = EObject.class::isInstance;
+ umlContents.stream()
+ .filter(isAnElement.negate().and(isAnEObject))
+ .map(EObject.class::cast)
+ .forEach(this::processStereotypeApplication);
+ } finally {
+ monitor.done();
+ }
+ }
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public IStatus executeAfter(ExecutionContext context, IProgressMonitor monitor) {
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public void setResourceSet(ResourceSet resourceSet) {
+ // Pass
+ }
+
+ @Override
+ public void setExecutorsPool(ExecutorsPool executorsPool) {
+ // Pass
+ }
+
+ //
+ // UML 2.5 conversion
+ //
+
+ private void processStereotypeApplication(EObject stereotypeApplication) {
+ EClass stereotype = stereotypeApplication.eClass();
+ EStructuralFeature anyAttribute = stereotype.getEStructuralFeature("anyAttribute");
+ if ((anyAttribute != null) && FeatureMapUtil.isFeatureMap(anyAttribute)) {
+ FeatureMap featureMap = (FeatureMap) stereotypeApplication.eGet(anyAttribute);
+ Port port = null;
+ Boolean isConjugated = null;
+
+ for (FeatureMap.Entry next : featureMap) {
+ switch (next.getEStructuralFeature().getName()) {
+ case "base_Port":
+ port = dereference(stereotypeApplication, next.getValue(), Port.class);
+ break;
+ case "isConjugate":
+ case "isConjugated":
+ isConjugated = asBoolean(next.getValue());
+ break;
+ }
+ }
+
+ if ((port != null) && (isConjugated != null)) {
+ port.setIsConjugated(isConjugated);
+ }
+ }
+ }
+
+ private <T extends EObject> T dereference(EObject owner, Object reference, Class<? extends T> type) {
+ T result = null;
+
+ if (reference instanceof String) {
+ String fragment = (String) reference;
+ EObject referenced = owner.eResource().getEObject(fragment);
+ if (type.isInstance(referenced)) {
+ result = type.cast(referenced);
+ }
+ }
+
+ return result;
+ }
+
+ private static Boolean asBoolean(Object value) {
+ return (value == null) ? Boolean.FALSE : Boolean.valueOf(value.toString());
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/concurrent/ThreadSafeResourceSetTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/concurrent/ThreadSafeResourceSetTest.java
new file mode 100644
index 0000000..eb7cd5f
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/concurrent/ThreadSafeResourceSetTest.java
@@ -0,0 +1,174 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests.concurrent;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ResourceAccessHelper;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ThreadSafeResourceSet;
+import org.eclipse.papyrus.interoperability.rsa.tests.Activator;
+import org.eclipse.papyrus.junit.framework.classification.ExpensiveTest;
+import org.eclipse.papyrus.junit.framework.classification.tests.AbstractPapyrusTest;
+import org.eclipse.papyrus.junit.utils.PapyrusProjectUtils;
+import org.eclipse.papyrus.junit.utils.ProjectUtils;
+import org.eclipse.uml2.uml.Model;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Ignore;
+import org.junit.Test;
+
+
+/**
+ * Tests the {@link ThreadSafeResourceSet} and {@link ResourceAccessHelper} classes
+ *
+ * @author Camille Letavernier
+ *
+ */
+public class ThreadSafeResourceSetTest extends AbstractPapyrusTest{
+
+ private final int NUM_THREADS = 8;
+
+ private final int WRITE_THREADS = 3;
+
+ private final int WRITE_LOOPS = 200;
+
+ private boolean failed;
+
+ private int writeThreadsComplete;
+
+ private boolean writeComplete;
+
+ @Before
+ public void init() {
+ failed = false;
+ writeThreadsComplete = 0;
+ writeComplete = false;
+ }
+
+ /**
+ * Read & Write a single big resource (1.3MB) concurrently on {@link NUM_THREADS} threads
+ *
+ * Each thread has its own resource set
+ *
+ * Expensive test (CPU, Disk and Memory)
+ *
+ * @throws Exception
+ */
+ @Ignore("The test is too expensive; completely disable it until the test suite supports a Lightweight vs Full test configuration")
+ @ExpensiveTest("Expensive CPU, DISK and Memory usage. May cause Memory Leaks")
+ @Test
+ public void testThreadSafeResourceSet() throws Exception {
+
+ IProject project = ProjectUtils.createProject("concurrent");
+ IFile modelFile = PapyrusProjectUtils.copyIFile("resources/concurrent/model.uml", Activator.getDefault().getBundle(), project, "model.uml");
+ final URI modelURI = URI.createPlatformResourceURI(modelFile.getFullPath().toString(), true);
+
+ List<Thread> allThreads = new LinkedList<Thread>();
+
+ for (int i = 0; i < WRITE_THREADS; i++) {
+ Thread writeThread = new Thread() {
+ @Override
+ public void run() {
+
+ // ResourceSet resourceSet = new ResourceSetImpl();
+ ResourceSet resourceSet = new ThreadSafeResourceSet();
+ Resource modelResource = resourceSet.getResource(modelURI, true);
+
+ try {
+ for (int i = 0; i < WRITE_LOOPS; i++) {
+
+ ((Model) modelResource.getContents().get(0)).setName("x" + System.nanoTime()); // Any change
+
+ ResourceAccessHelper.INSTANCE.saveResource(modelResource, null);
+ // modelResource.save(null);
+
+ if (i % 20 == 0) {
+ System.out.println("Write: " + i + "/" + WRITE_LOOPS);
+ }
+ }
+ } catch (Throwable ex) {
+ Activator.log.error(ex);
+ fireWriteComplete();
+ fail();
+ }
+
+ EMFHelper.unload(resourceSet);
+ fireWriteComplete();
+ }
+ };
+
+ writeThread.start();
+ allThreads.add(writeThread);
+
+
+ }
+
+ for (int i = WRITE_THREADS; i < NUM_THREADS; i++) {
+ Thread readThread = new Thread() {
+ @Override
+ public void run() {
+ try {
+
+ int i = 0;
+ while (!writeComplete) {
+ // ResourceSet resourceSet = new ResourceSetImpl();
+ ResourceSet resourceSet = new ThreadSafeResourceSet();
+ resourceSet.getResource(modelURI, true);
+ EMFHelper.unload(resourceSet);
+
+ if (i % 5 == 0) {
+ System.out.println("Read: " + i);
+ }
+
+ i++;
+ }
+
+ System.out.println("Read complete");
+ } catch (Throwable ex) {
+ Activator.log.error(ex);
+ fail();
+ }
+ }
+ };
+
+ readThread.start();
+ allThreads.add(readThread);
+ }
+
+ for (Thread thread : allThreads) {
+ thread.join();
+ }
+
+ Assert.assertFalse(failed);
+ }
+
+ protected synchronized void fireWriteComplete() {
+ writeThreadsComplete++;
+
+ System.out.println("Write complete (" + writeThreadsComplete + "/" + WRITE_THREADS + ")");
+
+ if (writeThreadsComplete == WRITE_THREADS) {
+ writeComplete = true;
+ }
+ }
+
+ protected synchronized void fail() {
+ this.failed = true;
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/AbstractTransformationTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/AbstractTransformationTest.java
new file mode 100644
index 0000000..8bcbd7a
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/AbstractTransformationTest.java
@@ -0,0 +1,349 @@
+/*****************************************************************************
+ * Copyright (c) 2015, 2016 CEA LIST, Christian W. Damus, and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ * Christian W. Damus - bugs 496439, 461980, 496653, 498282
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests.qvt;
+
+import static org.hamcrest.CoreMatchers.instanceOf;
+import static org.hamcrest.CoreMatchers.notNullValue;
+import static org.hamcrest.MatcherAssert.assertThat;
+
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Objects;
+import java.util.Queue;
+import java.util.Spliterator;
+import java.util.Spliterators;
+import java.util.stream.Collectors;
+import java.util.stream.Stream;
+import java.util.stream.StreamSupport;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.IPath;
+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.ecore.util.EcoreUtil;
+import org.eclipse.gmf.runtime.diagram.core.util.ViewUtil;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.core.utils.ServiceUtils;
+import org.eclipse.papyrus.infra.emf.utils.ServiceUtilsForEObject;
+import org.eclipse.papyrus.infra.gmfdiag.common.model.NotationUtils;
+import org.eclipse.papyrus.infra.gmfdiag.common.utils.DiagramUtils;
+import org.eclipse.papyrus.infra.ui.editor.IMultiDiagramEditor;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory;
+import org.eclipse.papyrus.interoperability.rsa.transformation.DependencyAnalysisHelper;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformation;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformationLauncher;
+import org.eclipse.papyrus.junit.framework.classification.tests.AbstractPapyrusTest;
+import org.eclipse.papyrus.junit.utils.DisplayUtils;
+import org.eclipse.papyrus.junit.utils.rules.HouseKeeper;
+import org.eclipse.papyrus.uml.tools.model.UmlModel;
+import org.eclipse.uml2.uml.Package;
+import org.hamcrest.BaseMatcher;
+import org.hamcrest.Description;
+import org.hamcrest.Matcher;
+import org.junit.Assert;
+import org.junit.Before;
+import org.junit.Rule;
+
+import com.google.common.collect.Queues;
+
+public class AbstractTransformationTest extends AbstractPapyrusTest {
+
+ @Rule
+ public final HouseKeeper houseKeeper = new HouseKeeper();
+
+ public IProject project;
+
+ public IFile mainModelFile;
+
+ public IFile[] mainModelFiles;
+
+ public Package rootPackage;
+
+ public IMultiDiagramEditor editor;
+
+ @Before
+ public void createProject() {
+ project = houseKeeper.createProject("org.eclipse.papyrus.interoperability.rsa.test.project");
+ }
+
+ protected void simpleImport(String modelToImportPath, String[] additionalResourcesPath, boolean useBatchLauncher) throws Exception {
+ // Import the main model file
+ mainModelFile = houseKeeper.createFile(project, modelToImportPath, modelToImportPath);
+
+ // Import the fragments
+
+ for (String path : additionalResourcesPath) {
+ houseKeeper.createFile(project, path, path);
+ }
+
+ URI sourceURI = URI.createPlatformResourceURI(mainModelFile.getFullPath().toString(), true);
+
+ if (useBatchLauncher) {
+ Config config = RSAToPapyrusParametersFactory.eINSTANCE.createConfig();
+ config.setAlwaysAcceptSuggestedMappings(true);
+ config.setRemoveUnmappedProfilesAndStereotypes(true);
+
+ ImportTransformationLauncher launcher = createTransformationLauncher(config);
+ launcher.run(Collections.singletonList(sourceURI));
+
+ launcher.waitForCompletion();
+
+ Assert.assertTrue("The transformation didn't complete normally", launcher.getResult().isOK());
+ checkResultFile(mainModelFile);
+ } else {
+ Config config = RSAToPapyrusParametersFactory.eINSTANCE.createConfig();
+ config.setRemoveUnmappedProfilesAndStereotypes(true);
+
+ ImportTransformation transformation = createTransformation(sourceURI, config, null);
+ transformation.run(false);
+ transformation.waitForCompletion();
+
+ Assert.assertTrue("The transformation didn't complete normally", transformation.getStatus().isOK());
+ checkResultFile(mainModelFile);
+ }
+
+ }
+
+ protected void simpleImport(String modelToImportPath, String... additionalResourcesPath) throws Exception {
+ simpleImport(modelToImportPath, additionalResourcesPath, false);
+ }
+
+ protected void openEditor() throws Exception {
+ editor = houseKeeper.openPapyrusEditor(mainModelFile);
+ ModelSet modelSet = ServiceUtils.getInstance().getModelSet(editor.getServicesRegistry());
+
+ UmlModel umlModel = (UmlModel) modelSet.getModel(UmlModel.MODEL_ID);
+ rootPackage = (Package) umlModel.getResource().getContents().get(0);
+ }
+
+ protected Diagram openDiagram(String name) throws Exception {
+ Diagram result = getDiagram(name);
+ ServiceUtilsForEObject.getInstance().getIPageManager(result).openPage(result);
+ DisplayUtils.flushEventLoop();
+
+ // Ensure that the editor is actually fully opened and that diagram reconcilers
+ // have run, if necessary (bug 496653)
+ editor.getActiveEditor();
+
+ return result;
+ }
+
+ protected Diagram getDiagram(String name) throws Exception {
+ List<Diagram> diagrams = getDiagrams();
+ Diagram result = diagrams.stream()
+ .filter(d -> name.equals(d.getName()))
+ .findAny()
+ .orElseThrow(AssertionError::new);
+ return result;
+ }
+
+ protected List<Diagram> getDiagrams() throws Exception {
+ ModelSet modelSet = ServiceUtils.getInstance().getModelSet(editor.getServicesRegistry());
+ return StreamSupport.stream(NotationUtils.getAllNotations(modelSet).spliterator(), false)
+ .filter(Diagram.class::isInstance).map(Diagram.class::cast)
+ .collect(Collectors.toList());
+ }
+
+ protected void batchImport(String[] modelsToImportPath, String[] additionalResourcesPath) throws Exception {
+
+ mainModelFiles = new IFile[modelsToImportPath.length];
+ List<URI> urisToImport = new LinkedList<>();
+
+ int i = 0;
+ for (String mainModelPath : modelsToImportPath) {
+ mainModelFiles[i] = houseKeeper.createFile(project, mainModelPath, mainModelPath);
+ URI uri = URI.createPlatformResourceURI(mainModelFiles[i].getFullPath().toString(), true);
+
+ urisToImport.add(uri);
+
+ i++;
+ }
+
+ for (String path : additionalResourcesPath) {
+ houseKeeper.createFile(project, path, path);
+ }
+
+ mainModelFile = mainModelFiles[0];
+
+ Config config = RSAToPapyrusParametersFactory.eINSTANCE.createConfig();
+ config.setMaxThreads(4);
+ config.setAlwaysAcceptSuggestedMappings(true);
+ config.setRemoveUnmappedProfilesAndStereotypes(true);
+
+ ImportTransformationLauncher launcher = createTransformationLauncher(config);
+ launcher.run(urisToImport);
+
+ launcher.waitForCompletion();
+
+ Assert.assertTrue("The transformation didn't complete normally", launcher.getResult().isOK());
+
+ for (IFile sourceFile : mainModelFiles) {
+ checkResultFile(sourceFile);
+ }
+ }
+
+ private ImportTransformationLauncher createTransformationLauncher(Config config) {
+ ImportTransformationLauncher result;
+
+ final URI[] additionalTransformations = getAdditionalTransformations();
+ if (additionalTransformations.length == 0) {
+ result = new ImportTransformationLauncher(config);
+ } else {
+ // Append some more transformations to the chain
+ result = new ImportTransformationLauncher(config) {
+ @Override
+ protected ImportTransformation createTransformation(URI transformationURI) {
+ return AbstractTransformationTest.this.createTransformation(
+ transformationURI, config, analysisHelper);
+ }
+ };
+ }
+
+ return result;
+ }
+
+ private ImportTransformation createTransformation(URI transformationURI, Config config, DependencyAnalysisHelper analysisHelper) {
+ ImportTransformation result;
+
+ final URI[] additionalTransformations = getAdditionalTransformations();
+ if (additionalTransformations.length == 0) {
+ result = new ImportTransformation(transformationURI, config, analysisHelper);
+ } else {
+ result = new ImportTransformation(transformationURI, config, analysisHelper) {
+ @Override
+ protected Collection<URI> getAdditionalTransformationURIs() {
+ return Arrays.asList(additionalTransformations);
+ }
+ };
+ }
+
+ return result;
+ }
+
+ /**
+ * Obtains the URIs of zero or more additional transformations to append to the
+ * standard transformation chain.
+ *
+ * @return additional transformations, or an empty array if none
+ */
+ protected URI[] getAdditionalTransformations() {
+ return new URI[0];
+ }
+
+ protected void checkResultFile(IFile sourceFile) {
+ IPath targetPath;
+ if ("emx".equals(sourceFile.getFullPath().getFileExtension())) {
+ targetPath = sourceFile.getFullPath().removeFileExtension().addFileExtension("uml");
+ } else if ("epx".equals(sourceFile.getFullPath().getFileExtension())) {
+ targetPath = sourceFile.getFullPath().removeFileExtension().addFileExtension("profile.uml");
+ } else {
+ return;
+ }
+
+ IFile targetFile = ResourcesPlugin.getWorkspace().getRoot().getFile(targetPath);
+ Assert.assertTrue(targetFile.exists());
+ }
+
+ protected void assertRSAModelsRemoved(boolean resolveAll) {
+ EcoreUtil.resolveAll(rootPackage);
+
+ // General test: After resolving everything, we should only have Papyrus resources in the scope
+ for (Resource resource : rootPackage.eResource().getResourceSet().getResources()) {
+ String fileExtension = resource.getURI().fileExtension();
+ Assert.assertNotEquals("RSA resources should not be referenced anymore", "emx", fileExtension);
+ Assert.assertNotEquals("RSA resources should not be referenced anymore", "efx", fileExtension);
+ Assert.assertNotEquals("RSA Profiles should not be reference anymore", "epx", fileExtension);
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ protected EList<View> children(View view) {
+ return view.getChildren();
+ }
+
+ protected View requireChild(View view, String type) {
+ View result = ViewUtil.getChildBySemanticHint(view, type);
+ assertThat("No child of type " + type, result, notNullValue());
+ return result;
+ }
+
+ protected <T extends View> T requireChild(View view, String type, Class<T> ofClass) {
+ View result = requireChild(view, type);
+ assertThat(result, instanceOf(ofClass));
+ return ofClass.cast(result);
+ }
+
+ protected Stream<EObject> streamAllContents(EObject object) {
+ return StreamSupport.stream(Spliterators.spliteratorUnknownSize(
+ object.eAllContents(),
+ Spliterator.ORDERED | Spliterator.DISTINCT | Spliterator.NONNULL),
+ false);
+ }
+
+ protected Stream<Diagram> diagramsOf(EObject object) {
+ return DiagramUtils.getAssociatedDiagrams(object, null).stream();
+ }
+
+ @SafeVarargs
+ protected final <T> Matcher<Iterable<? extends T>> containsInOrder(T... elements) {
+ List<T> expected = Arrays.asList(elements);
+
+ return new BaseMatcher<Iterable<? extends T>>() {
+ @Override
+ public void describeTo(Description description) {
+ description.appendText("contains ")
+ .appendValueList("(", ", ", ")", Arrays.asList(elements))
+ .appendText(" in order");
+ }
+
+ @Override
+ public boolean matches(Object item) {
+ boolean result;
+
+ if (!(item instanceof Iterable<?>)) {
+ result = false;
+ } else {
+ Queue<T> queue = Queues.newArrayDeque(expected);
+ Iterator<?> iter = ((Iterable<?>) item).iterator();
+ for (T next = queue.peek(); (next != null) && iter.hasNext(); next = queue.peek()) {
+ while (iter.hasNext()) {
+ if (Objects.equals(iter.next(), next)) {
+ // Matched the next in the expected order. Advance
+ queue.remove();
+ break;
+ }
+ }
+ }
+
+ // Did we find them all, in order?
+ result = queue.isEmpty();
+ }
+
+ return result;
+ }
+ };
+
+
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/BatchImportTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/BatchImportTest.java
new file mode 100644
index 0000000..fd978c7
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/BatchImportTest.java
@@ -0,0 +1,163 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests.qvt;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.Config;
+import org.eclipse.papyrus.interoperability.rsa.RSAToPapyrusParameters.RSAToPapyrusParametersFactory;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformationLauncher;
+import org.eclipse.papyrus.junit.framework.classification.FailingTest;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.PackageImport;
+import org.eclipse.uml2.uml.Stereotype;
+import org.junit.Assert;
+import org.junit.Ignore;
+import org.junit.Test;
+
+public class BatchImportTest extends AbstractTransformationTest {
+
+ protected void prepareTestRepairDependencies() throws Exception {
+
+ final String prefix = "resources/dependencies/"; //$NON-NLS-1$
+
+ mainModelFiles = new IFile[3];
+ List<URI> urisToImport = new LinkedList<URI>();
+
+ // //// Create the main project //////
+
+ String[] sourcePath = new String[] { "Libraries.emx", "Library.emx" };//$NON-NLS-1$ //$NON-NLS-2$
+ String[] sourceFragments = new String[] { "ModelFragment_1.efx", "ModelFragment_2.efx" };//$NON-NLS-1$ //$NON-NLS-2$
+
+ int i = 0;
+ for (String mainModelPath : sourcePath) {
+ mainModelFiles[i] = houseKeeper.createFile(project, mainModelPath, prefix + mainModelPath);
+ URI uri = URI.createPlatformResourceURI(mainModelFiles[i].getFullPath().toString(), true);
+
+ urisToImport.add(uri);
+
+ i++;
+ }
+
+ mainModelFile = mainModelFiles[0];
+
+ for (String path : sourceFragments) {
+ houseKeeper.createFile(project, path, prefix + path);
+ }
+
+ // //////////////////////////////////
+
+ // ////// Create the referenced project ///////
+
+ final String referencedProjectName = "RSA To Papyrus - Workspace Library - Test"; //$NON-NLS-1$
+
+ IProject referencedProject = houseKeeper.createProject(referencedProjectName);
+ String referencedProjectPath = prefix + "project/" + referencedProjectName + "/";//$NON-NLS-1$ //$NON-NLS-2$
+ mainModelFiles[i] = houseKeeper.createFile(referencedProject, "ProjectLibrary.emx", referencedProjectPath + "ProjectLibrary.emx");//$NON-NLS-1$ //$NON-NLS-2$
+ URI uri = URI.createPlatformResourceURI(mainModelFiles[i].getFullPath().toString(), true);
+ urisToImport.add(uri);
+ houseKeeper.createFile(referencedProject, "ModelFragment_1.efx", referencedProjectPath + "ModelFragment_1.efx");//$NON-NLS-1$ //$NON-NLS-2$
+
+ // ////////////////////////////////////////////
+
+ // /////// Execute the transformation ////////
+
+ Config config = RSAToPapyrusParametersFactory.eINSTANCE.createConfig();
+ config.setMaxThreads(4);
+ config.setAlwaysAcceptSuggestedMappings(true);
+ config.setRemoveUnmappedProfilesAndStereotypes(true);
+ ImportTransformationLauncher launcher = new ImportTransformationLauncher(config);
+ launcher.run(urisToImport);
+
+ launcher.waitForCompletion();
+
+ Assert.assertTrue("The transformation didn't complete normally", launcher.getResult().isOK());
+ for (IFile sourceFile : mainModelFiles) {
+ checkResultFile(sourceFile);
+ }
+
+ // ///////////////////////////////////////////
+ }
+
+ // dependencies/*
+ @Test
+ public void testRepairDependencies() throws Exception {
+ // Don't use the superclass because we need two different projects, to test cross-project references in the workspace
+ // The super class automatically creates a single project
+ prepareTestRepairDependencies();
+
+ openEditor();
+
+ Assert.assertEquals("Libraries", rootPackage.getName());
+
+ assertRSAModelsRemoved(true);
+
+ URI expectedRootURI = URI.createPlatformResourceURI(project.getName() + "/Libraries.uml", true).appendFragment("_4L1kB5_bEeSMStbbPSeZNQ"); // The fragment should be unchanged
+ Assert.assertEquals(expectedRootURI, EcoreUtil.getURI(rootPackage));
+
+ Package package1 = (Package) rootPackage.getPackagedElement("Package1");
+ URI expectedURI = URI.createPlatformResourceURI(project.getName() + "/ModelFragment_2.uml", true).appendFragment("_44LsoJ_bEeSMStbbPSeZNQ"); // The fragment should be unchanged
+ Assert.assertEquals(expectedURI, EcoreUtil.getURI(package1));
+
+ PackageImport projectLibraryPackageImport = rootPackage.getPackageImports().get(2);
+ Package workspaceProjectPackage = projectLibraryPackageImport.getImportedPackage();
+
+ Assert.assertEquals("ProjectLibrary", workspaceProjectPackage.getName());
+ }
+
+ // deployed/*;
+ @Test
+ @Ignore("Not implemented")
+ public void testRepairDeployedLibrary() throws Exception {
+
+ }
+
+ // resources/profile+fragments/*
+ @Test
+ @FailingTest("The Stereotype Migration tool doesn't detect that EPX stereotypes are broken and doesn't repair them")
+ public void testProfiledFragmentedModel() throws Exception {
+ String path = "resources/profile+fragments/";
+ String[] mainModels = new String[] {
+ path + "Blank Package.emx",
+ path + "TestProfile - Fragments.epx" };
+
+ String[] fragments = new String[] {
+ path + "ModelFragment_1.efx",
+ path + "ModelFragment_2.efx" };
+
+ batchImport(mainModels, fragments);
+ openEditor();
+
+ assertRSAModelsRemoved(true); // Breaks: the EPX profile is still applied
+
+ Class class1 = (Class) rootPackage.getPackagedElement("Class1");
+ Stereotype stereotype1 = class1.getAppliedStereotype("TestProfile::Stereotype1");
+ Assert.assertNotNull("Class1 should be stereotyped with Stereotype1", stereotype1);
+ Assert.assertEquals("uml", EcoreUtil.getURI(stereotype1.getProfile()).fileExtension());
+
+ Package fragment2 = (Package) rootPackage.getPackagedElement("Fragment2");
+ Class f2c1 = (Class) fragment2.getPackagedElement("Class1");
+ Stereotype fragmentStereotype1 = f2c1.getAppliedStereotype("TestProfile::Stereotype1");
+ Assert.assertNotNull("Class1 should be stereotyped with Stereotype1", fragmentStereotype1);
+ Assert.assertEquals("uml", EcoreUtil.getURI(fragmentStereotype1.getProfile()).fileExtension());
+
+ Stereotype fragmentStereotype2 = f2c1.getAppliedStereotype("TestProfile::Stereotype2");
+ Assert.assertNotNull("Class1 should be stereotyped with Stereotype1", fragmentStereotype2);
+ Assert.assertEquals("uml", EcoreUtil.getURI(fragmentStereotype2.getProfile()).fileExtension());
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportDiagramTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportDiagramTest.java
new file mode 100644
index 0000000..29dd8b9
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportDiagramTest.java
@@ -0,0 +1,313 @@
+/*****************************************************************************
+ * Copyright (c) 2014 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Thibault Le Ouay (Sherpa Engineering) t.leouay@sherpa-eng.com - Initial API and implementation
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests.qvt;
+
+import java.net.URL;
+import java.util.Iterator;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicReference;
+
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.emf.common.command.Command;
+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.ecore.util.EcoreUtil;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.gef.EditPart;
+import org.eclipse.gmf.runtime.diagram.ui.editparts.IGraphicalEditPart;
+import org.eclipse.gmf.runtime.diagram.ui.parts.IDiagramWorkbenchPart;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.papyrus.commands.OpenDiagramCommand;
+import org.eclipse.papyrus.infra.core.resource.ModelMultiException;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.core.resource.ModelsReader;
+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.gmfdiag.common.model.NotationUtils;
+import org.eclipse.papyrus.infra.ui.editor.IMultiDiagramEditor;
+import org.eclipse.papyrus.interoperability.rsa.tests.Activator;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformation;
+import org.eclipse.papyrus.junit.framework.classification.tests.AbstractPapyrusTest;
+import org.eclipse.papyrus.junit.utils.EditorUtils;
+import org.eclipse.papyrus.junit.utils.FilesUtils;
+import org.eclipse.papyrus.junit.utils.ProjectUtils;
+import org.eclipse.papyrus.uml.diagram.common.util.DiagramEditPartsUtil;
+import org.eclipse.papyrus.uml.tools.commands.ApplyProfileCommand;
+import org.eclipse.papyrus.uml.tools.model.UmlUtils;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.IEditorPart;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.IWorkbenchWindow;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.uml2.uml.Profile;
+import org.eclipse.uml2.uml.UMLPackage;
+import org.eclipse.uml2.uml.resource.UMLResource;
+import org.junit.AfterClass;
+import org.junit.Assert;
+import org.junit.BeforeClass;
+import org.junit.Test;
+
+//resources/*.e*x
+public class ImportDiagramTest extends AbstractPapyrusTest {
+
+ private static IProject targetProject;
+
+ protected static IMultiDiagramEditor editor;
+
+ protected static URI fileDiagram, fileProfile;
+
+
+ @AfterClass
+ public static void dispose() throws Exception {
+
+ IWorkbench wb = PlatformUI.getWorkbench();
+ IWorkbenchPage page = wb.getActiveWorkbenchWindow().getActivePage();
+ page.closeAllEditors(false);
+ targetProject.delete(true, new NullProgressMonitor());
+ }
+
+
+ @BeforeClass
+ public static void init() throws Exception {
+ IWorkbench workbench = PlatformUI.getWorkbench();
+ IWorkbenchWindow window = workbench.getActiveWorkbenchWindow();
+ while (window == null) {
+ Display.getCurrent().readAndDispatch();
+ window = workbench.getActiveWorkbenchWindow();
+ }
+
+ targetProject = ProjectUtils.createProject(Activator.PLUGIN_ID + ".testProject");
+ URI rsaDiagramModelUri = URI.createPlatformPluginURI(Activator.PLUGIN_ID + "/resources/ModelTestClass.emx", true);
+ URI rsaProfileModelUri = URI.createPlatformPluginURI(Activator.PLUGIN_ID + "/resources/Profile.epx", true);
+
+ FilesUtils.copyFiles(targetProject, "ModelTestClass.emx", new URL(rsaDiagramModelUri.toString()));
+ FilesUtils.copyFiles(targetProject, "Profile.epx", new URL(rsaProfileModelUri.toString()));
+
+ fileDiagram = URI.createPlatformResourceURI(Activator.PLUGIN_ID + ".testProject" + "/ModelTestClass.emx", true);
+ ImportTransformation transfoDiagram = new ImportTransformation(fileDiagram);
+
+ fileProfile = URI.createPlatformResourceURI(Activator.PLUGIN_ID + ".testProject" + "/Profile.epx", true);
+ ImportTransformation transfoProfile = new ImportTransformation(fileProfile);
+
+ // Run in sequence, since individual transformations are not thread safe
+
+ transfoDiagram.run(false);
+ transfoDiagram.waitForCompletion();
+
+ transfoProfile.run(false);
+ transfoProfile.waitForCompletion();
+
+ URI umlModelURI = fileDiagram.trimFileExtension().appendFileExtension("uml");
+ IFile umlModelFile = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(umlModelURI.toPlatformString(true)));
+ Assert.assertTrue(umlModelFile.exists());
+
+ URI umlProfileURI = fileProfile.trimFileExtension().appendFileExtension("profile.uml");
+ IFile umlProfileFile = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(umlProfileURI.toPlatformString(true)));
+ Assert.assertTrue(umlProfileFile.exists());
+ }
+
+
+
+ // Test should be more generic
+
+ @Test
+ public void openModelTest() throws Exception {
+ ModelSet modelSet = new ModelSet();
+ ModelsReader reader = new ModelsReader();
+ reader.readModel(modelSet);
+ try {
+ modelSet.loadModels(fileDiagram.trimFileExtension().appendFileExtension("di"));
+ } catch (ModelMultiException e) {
+ e.printStackTrace();
+ }
+ final ServicesRegistry registry = new ExtensionServicesRegistry(org.eclipse.papyrus.infra.core.Activator.PLUGIN_ID);
+ try {
+ registry.add(ModelSet.class, Integer.MAX_VALUE, modelSet);
+ registry.startRegistry();
+ } catch (ServiceException ex) {
+ // Ignored: we don't need all services
+ }
+
+
+
+ TransactionalEditingDomain editingDomain = modelSet.getTransactionalEditingDomain();
+ Resource umlResource = UmlUtils.getUmlResource(modelSet);
+
+ // Profile should be applied during the transformation
+
+ if (umlResource instanceof UMLResource) {
+ EList<EObject> umlresourceContent = umlResource.getContents();
+ Iterator<EObject> umlite = umlresourceContent.iterator();
+ while (umlite.hasNext()) {
+ Object currentobject = umlite.next();
+ if (currentobject instanceof org.eclipse.uml2.uml.Package) {
+ URI uri = URI.createURI(UMLResource.STANDARD_PROFILE_URI, true);
+ Resource resource = modelSet.getResource(uri, true);
+ Profile profile = (Profile) EcoreUtil.getObjectByType(resource.getContents(), UMLPackage.Literals.PROFILE);
+ Command command = new ApplyProfileCommand((org.eclipse.uml2.uml.Package) currentobject, profile, editingDomain);
+ try {
+ editingDomain.getCommandStack().execute(command);
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ }
+
+ }
+ }
+ }
+
+ final AtomicReference<Exception> exception = new AtomicReference<Exception>();
+ Display.getDefault().syncExec(new Runnable() {
+
+ public void run() {
+ try {
+ IFile fileToOpen = (IFile) ResourcesPlugin.getWorkspace().getRoot().findMember(fileDiagram.trimFileExtension().appendFileExtension("di").toPlatformString(true));
+ editor = EditorUtils.openPapyrusEditor(fileToOpen);
+ } catch (Exception ex) {
+ exception.set(ex);
+ }
+ }
+ });
+
+ // Throw exception to get a proper JUnit report
+ if (exception.get() != null) {
+ throw exception.get();
+ }
+
+ Assert.assertNotNull("Cannot open the Papyrus editor", editor);
+
+ Resource notationResource = NotationUtils.getNotationModel(editor.getServicesRegistry().getService(ModelSet.class)).getResource();
+ List<EObject> listcontent = notationResource.getContents();
+
+ // Expected is 7 valid migrated diagrams.
+ // FIXME: Sequence Diagram import is currently disabled, so 6 is the new expected number
+ Assert.assertEquals(6, listcontent.size()); // Expected is 7 valid migrated diagrams
+
+ for (EObject cont : listcontent) {
+ Assert.assertTrue(cont instanceof Diagram);
+
+ Diagram currentDia = (Diagram) cont;
+ editingDomain.getCommandStack().execute(new GMFtoEMFCommandWrapper(new OpenDiagramCommand(editingDomain, currentDia)));
+ IEditorPart currentEditor = editor.getActiveEditor();
+ Assert.assertNotNull("could not open the diagram editor", currentEditor);
+ Assert.assertTrue("The active editor should be a GMF Diagram Editor. Received " + editor.getActiveEditor().getClass().getCanonicalName(), editor.getActiveEditor() instanceof IDiagramWorkbenchPart);
+ Object temp = currentEditor.getAdapter(EditPart.class);
+ Assert.assertNotNull(temp);
+ EditPart editPart = (EditPart) temp;
+ List<IGraphicalEditPart> listEditPart = DiagramEditPartsUtil.getAllEditParts(editPart);
+ for (EditPart currentEditPart : listEditPart) {
+ Assert.assertNotNull("should not be invalid view", currentEditPart);
+ }
+ }
+
+ try {
+ registry.disposeRegistry();
+ } catch (ServiceException ex) {
+ // Ignore
+ }
+ }
+
+ @Test
+ public void openProfileTest() throws Exception {
+ ModelSet modelSet = new ModelSet();
+ ModelsReader reader = new ModelsReader();
+ reader.readModel(modelSet);
+ try {
+ modelSet.loadModels(fileProfile.trimFileExtension().appendFileExtension("profile.di"));
+ } catch (ModelMultiException e) {
+ e.printStackTrace();
+ }
+ final ServicesRegistry registry = new ExtensionServicesRegistry(org.eclipse.papyrus.infra.core.Activator.PLUGIN_ID);
+ try {
+ registry.add(ModelSet.class, Integer.MAX_VALUE, modelSet);
+ registry.startRegistry();
+ } catch (ServiceException ex) {
+ // Ignored: we don't need all services
+ }
+
+ TransactionalEditingDomain editingDomain = modelSet.getTransactionalEditingDomain();
+ Resource umlResource = UmlUtils.getUmlResource(modelSet);
+
+ // Profile should be applied during the transformation
+
+ if (umlResource instanceof UMLResource) {
+ EList<EObject> umlresourceContent = umlResource.getContents();
+ Iterator<EObject> umlite = umlresourceContent.iterator();
+ while (umlite.hasNext()) {
+ Object currentobject = umlite.next();
+ if (currentobject instanceof org.eclipse.uml2.uml.Package) {
+ URI uri = URI.createURI(UMLResource.STANDARD_PROFILE_URI, true);
+ Resource resource = modelSet.getResource(uri, true);
+ Profile profile = (Profile) EcoreUtil.getObjectByType(resource.getContents(), UMLPackage.Literals.PROFILE);
+ Command command = new ApplyProfileCommand((org.eclipse.uml2.uml.Package) currentobject, profile, editingDomain);
+ try {
+ editingDomain.getCommandStack().execute(command);
+ } catch (Exception ex) {
+ ex.printStackTrace();
+ }
+
+ }
+ }
+ }
+
+ Display.getDefault().syncExec(new Runnable() {
+
+ public void run() {
+ try {
+ IFile fileToOpen = (IFile) ResourcesPlugin.getWorkspace().getRoot().findMember(fileProfile.trimFileExtension().appendFileExtension("profile.di").toPlatformString(true));
+ editor = EditorUtils.openPapyrusEditor(fileToOpen);
+ } catch (PartInitException ex) {
+ Activator.log.error(ex);
+ Assert.fail(ex.getMessage());
+ }
+ }
+ });
+ Assert.assertNotNull("Cannot open the Papyrus editor", editor);
+
+ Resource notationResource = NotationUtils.getNotationModel(editor.getServicesRegistry().getService(ModelSet.class)).getResource();
+ List<EObject> listcontent = notationResource.getContents();
+ Assert.assertEquals(1, listcontent.size());
+ for (EObject cont : listcontent) {
+ Assert.assertTrue(cont instanceof Diagram);
+
+ Diagram currentDia = (Diagram) cont;
+ editingDomain.getCommandStack().execute(new GMFtoEMFCommandWrapper(new OpenDiagramCommand(editingDomain, currentDia)));
+ IEditorPart currentEditor = editor.getActiveEditor();
+ Assert.assertNotNull("could not open the diagram editor", currentEditor);
+ Assert.assertTrue("The active editor should be a GMF Diagram Editor", editor.getActiveEditor() instanceof IDiagramWorkbenchPart);
+ Object temp = currentEditor.getAdapter(EditPart.class);
+ Assert.assertNotNull(temp);
+ EditPart editPart = (EditPart) temp;
+ List<IGraphicalEditPart> listEditPart = DiagramEditPartsUtil.getAllEditParts(editPart);
+ for (EditPart currentEditPart : listEditPart) {
+ Assert.assertNotNull("should not be invalid view", currentEditPart);
+ }
+ }
+
+ try {
+ registry.disposeRegistry();
+ } catch (ServiceException ex) {
+ // Ignore
+ }
+ }
+
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportModelsTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportModelsTest.java
new file mode 100644
index 0000000..6ebabd5
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportModelsTest.java
@@ -0,0 +1,121 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests.qvt;
+
+
+import java.util.List;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.core.utils.ServiceUtils;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Stereotype;
+import org.junit.Assert;
+import org.junit.Ignore;
+import org.junit.Test;
+
+public class ImportModelsTest extends AbstractTransformationTest {
+
+
+ // resources/fragments/*
+ @Test
+ public void testFragments() throws Exception {
+
+ String path = "resources/fragments/";
+
+ String mainFile = path + "Blank Package.emx";
+
+ String[] additionalFiles = new String[] {
+ path + "Class3.efx",
+ path + "Interface - Fragment.efx",
+ path + "Package - Fragment.efx"
+ };
+
+ simpleImport(mainFile, additionalFiles);
+
+ openEditor();
+
+ // Fragments should have been moved to the proper resource
+ Package fragmentPackage = (Package) rootPackage.getMember("Package - Fragment");
+ Assert.assertEquals("Package - Fragment.uml", URI.decode(EcoreUtil.getURI(fragmentPackage).lastSegment()));
+ Assert.assertEquals("_0OuW4LZ7EeOu-9meM8ButQ", EcoreUtil.getURI(fragmentPackage).fragment()); // The XMI ID should be unchanged
+
+ Class class3 = (Class) fragmentPackage.getMember("Class3");
+ Assert.assertEquals("Class3.uml", EcoreUtil.getURI(class3).lastSegment());
+ Assert.assertEquals("_ONlFkLZ8EeOu-9meM8ButQ", EcoreUtil.getURI(class3).fragment()); // The XMI ID should be unchanged
+
+ // Diagrams associated to fragmented elements should have been moved to their own notation resource
+
+ ModelSet modelSet = ServiceUtils.getInstance().getModelSet(editor.getServicesRegistry());
+ String NotationResourcePath = (mainModelFile.getFullPath().removeLastSegments(1).append("Package - Fragment.notation")).toString();
+ Resource fragmentPackageNotationResource = modelSet.getResource(URI.createPlatformResourceURI(NotationResourcePath, true), true);
+ Assert.assertEquals(2, fragmentPackageNotationResource.getContents().size());
+
+ }
+
+ // resources/parameters/*
+ @Test
+ @Ignore("Not yet implemented")
+ public void testTransformationParameters() throws Exception {
+
+ }
+
+ // Bug 459488
+ // resources/anytypeReferences/*
+ @Test
+ public void testImportProfileReferences() throws Exception {
+ String path = "resources/anytypeReferences/";
+ String mainFile = path + "Blank Package.emx";
+ String[] additionalFiles = new String[] {
+ path + "ModelFragment_1.efx",
+ path + "ModelFragment_2.efx",
+ path + "ModelFragment_3.efx"
+ };
+
+ simpleImport(mainFile, additionalFiles, true);
+
+ openEditor();
+
+ Package fragments = rootPackage.getNestedPackage("Fragments");
+ Class refOne = (Class) fragments.getOwnedType("RefOne");
+ Class refMultiple = (Class) fragments.getOwnedType("RefMultiple");
+ Class refMixed = (Class) fragments.getOwnedType("RefMixed");
+
+ Stereotype st1 = refOne.getAppliedStereotype("Profile::Stereotype1");
+ Stereotype st2 = refMultiple.getAppliedStereotype("Profile::Stereotype2");
+ Stereotype st3 = refMixed.getAppliedStereotype("Profile::Stereotype2");
+
+ Class referencedClass1 = (Class) refOne.getValue(st1, "class");
+ Assert.assertNotNull("The reference to Class has disappeared", referencedClass1);
+ Assert.assertFalse("The reference to Class cannot be resolved", referencedClass1.eIsProxy());
+
+ List<?> referencedClasses = (List<?>) refMultiple.getValue(st2, "class");
+ Assert.assertEquals("There should be 4 references to classes", 4, referencedClasses.size());
+ for (Object value : referencedClasses) {
+ EObject referencedObject = (EObject) value;
+ Assert.assertFalse("The referenced element is not resolved", referencedObject.eIsProxy());
+ }
+
+ List<?> referencedClasses2 = (List<?>) refMixed.getValue(st3, "class");
+ Assert.assertEquals("There should be 7 references to classes", 7, referencedClasses2.size());
+ for (Object value : referencedClasses2) {
+ EObject referencedObject = (EObject) value;
+ Assert.assertFalse("The referenced element is not resolved", referencedObject.eIsProxy());
+ }
+ }
+
+
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportProfilesTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportProfilesTest.java
new file mode 100644
index 0000000..2263a18
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/ImportProfilesTest.java
@@ -0,0 +1,73 @@
+/*****************************************************************************
+ * Copyright (c) 2015 CEA LIST.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Camille Letavernier (CEA LIST) camille.letavernier@cea.fr - Initial API and implementation
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests.qvt;
+
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Interface;
+import org.eclipse.uml2.uml.Stereotype;
+import org.junit.Assert;
+import org.junit.Test;
+
+public class ImportProfilesTest extends AbstractTransformationTest {
+
+ // customProfile/*
+ @Test
+ public void testRepairProfiles() throws Exception {
+ String path = "resources/customProfile/";
+ String profilePath = path + "ProfileUpdates.epx";
+
+ // First, import the Profile
+ simpleImport(profilePath, new String[0]);
+
+ // Delete the profile (Avoid side-effect of broken Batch-import, already tested - and failing - in BatchImportTest#testProfiledFragmentedModel)
+ mainModelFile.delete(true, new NullProgressMonitor());
+
+ // Import the model
+ String modelPath = path + "ProfiledModel.emx";
+
+ simpleImport(modelPath, new String[0], true); // Use batch launcher to ensure profile is repaired
+
+ openEditor();
+
+ assertRSAModelsRemoved(true);
+
+ Class class1 = (Class) rootPackage.getPackagedElement("Class1");
+ Stereotype st3 = class1.getAppliedStereotype("ProfileUpdates::Stereotype3");
+ Assert.assertNotNull("Class1 should be stereotyped with Stereotype3", st3);
+
+ Interface interface1 = (Interface) rootPackage.getPackagedElement("Interface1");
+ Stereotype st5 = interface1.getAppliedStereotype("ProfileUpdates::Stereotype5");
+ Assert.assertNotNull("Interface1 should be stereotyped with Stereotype5", st5);
+ }
+
+ // ProfiledModel.emx + deployedProfile (Version n - 1: the model is profiled with a newer version than the one deployed)
+ @Test
+ public void testDeployedProfile() throws Exception {
+ String path = "resources/customProfile/";
+ String modelPath = path + "ProfiledModel.emx";
+
+ simpleImport(modelPath, new String[0], true); // Use batch launcher to ensure profile is repaired
+
+ openEditor();
+
+ assertRSAModelsRemoved(true);
+
+ Class class1 = (Class) rootPackage.getPackagedElement("Class1");
+ Stereotype st3 = class1.getAppliedStereotype("ProfileUpdates::Stereotype3");
+ Assert.assertNotNull("Class1 should be stereotyped with Stereotype3", st3);
+
+ Interface interface1 = (Interface) rootPackage.getPackagedElement("Interface1");
+ Stereotype st5 = interface1.getAppliedStereotype("ProfileUpdates::Stereotype5"); // Stereotype5 doesn't exist in the deployed version of the profile and should have been removed
+ Assert.assertNull("Interface1 should not be stereotyped", st5);
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/TracesTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/TracesTest.java
new file mode 100644
index 0000000..833eca4
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/qvt/TracesTest.java
@@ -0,0 +1,49 @@
+/*****************************************************************************
+ * Copyright (c) 2016 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests.qvt;
+
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.papyrus.interoperability.rsa.tests.Activator;
+import org.junit.Test;
+
+public class TracesTest extends AbstractTransformationTest {
+ private static final String BASE_PATH = "resources/fragments/";
+
+ @Test
+ public void testTraces() throws Exception {
+
+ String mainFile = BASE_PATH + "Blank Package.emx";
+
+ String[] additionalFiles = new String[] {
+ BASE_PATH + "Class3.efx",
+ BASE_PATH + "Interface - Fragment.efx",
+ BASE_PATH + "Package - Fragment.efx"
+ };
+
+ simpleImport(mainFile, additionalFiles);
+
+ // Don't need to open the editor. The import succeeded
+ }
+
+ //
+ // Test framework
+ //
+
+ @Override
+ protected URI[] getAdditionalTransformations() {
+ return new URI[] {
+ URI.createPlatformPluginURI(Activator.PLUGIN_ID + "/resources/traces/asserttraces.qvto", true),
+ };
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/AbstractMigrationRegressionTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/AbstractMigrationRegressionTest.java
new file mode 100644
index 0000000..40d1433
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/AbstractMigrationRegressionTest.java
@@ -0,0 +1,153 @@
+/*****************************************************************************
+ * Copyright (c) 2016, 2017 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.tests.regression;
+
+import static org.junit.Assert.fail;
+
+import java.lang.annotation.ElementType;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.lang.annotation.Target;
+import java.util.Arrays;
+import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
+
+import org.eclipse.papyrus.interoperability.rsa.internal.extension.TransformationExtension;
+import org.eclipse.papyrus.interoperability.rsa.tests.qvt.AbstractTransformationTest;
+import org.eclipse.papyrus.junit.utils.JUnitUtils;
+import org.eclipse.papyrus.junit.utils.rules.AnnotationRule;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.junit.Before;
+import org.junit.Rule;
+import org.junit.rules.TestName;
+import org.junit.rules.TestRule;
+import org.junit.rules.TestWatcher;
+import org.junit.runner.Description;
+
+import com.google.common.collect.Lists;
+
+/**
+ * Common framework for regression tests in RSA migration.
+ */
+public abstract class AbstractMigrationRegressionTest extends AbstractTransformationTest {
+
+ @Rule
+ public final TestName name = new TestName();
+
+ @Rule
+ public final AnnotationRule<String[]> testModel = AnnotationRule.create(PluginResource.class);
+
+ @Rule
+ public final AnnotationRule<Boolean> batchMode = AnnotationRule.create(BatchMigration.class);
+
+ @Rule
+ public final TestRule transformationExtensions = new TransformationRule();
+
+ /**
+ * Initializes me.
+ */
+ protected AbstractMigrationRegressionTest() {
+ super();
+ }
+
+ @Before
+ public void importAndOpen() throws Exception {
+ List<String> resourcePaths = Lists.newArrayList(testModel.get());
+
+ Matcher bugMatcher = Pattern.compile("^(bug\\d+)/").matcher("");
+
+ resourcePaths.replaceAll(p -> {
+ String bug;
+
+ bugMatcher.reset(p);
+
+ if (bugMatcher.find()) {
+ bug = bugMatcher.group(1);
+
+ // Don't be redundant
+ p = p.substring(bugMatcher.end());
+ } else {
+ bug = name.getMethodName();
+ bug = bug.substring(bug.lastIndexOf('_') + 1);
+ }
+
+ return String.format("resources/%s/%s", bug, p);
+ });
+
+ simpleImport(resourcePaths.get(0),
+ resourcePaths.stream().skip(1).toArray(String[]::new),
+ batchMode.get());
+
+ openEditor();
+ }
+
+ //
+ // Nested types
+ //
+
+ /**
+ * Annotates a test or suite with the transformation extensions that
+ * it should enable for the duration of the test.
+ */
+ @Target({ ElementType.TYPE, ElementType.METHOD })
+ @Retention(RetentionPolicy.RUNTIME)
+ public @interface TransformationExtensionClass {
+ /** The transformation extension classes to enable. */
+ java.lang.Class<? extends TransformationExtension>[] value();
+ }
+
+ /**
+ * Annotates a test or suite to indicate whether batch import is needed.
+ */
+ @Target({ ElementType.TYPE, ElementType.METHOD })
+ @Retention(RetentionPolicy.RUNTIME)
+ public @interface BatchMigration {
+ /** Migrate in batch? */
+ boolean value() default true;
+ }
+
+ private static final class TransformationRule extends TestWatcher {
+ /**
+ * Enable the test transformations.
+ */
+ @Override
+ protected void starting(Description description) {
+ TransformationExtensionClass ext = JUnitUtils.getAnnotation(description, TransformationExtensionClass.class);
+ if (ext != null) {
+ Arrays.asList(ext.value()).forEach(e -> setEnabled(e, true));
+ }
+ }
+
+ /**
+ * Disable the test transformations.
+ */
+ @Override
+ protected void finished(Description description) {
+ TransformationExtensionClass ext = JUnitUtils.getAnnotation(description, TransformationExtensionClass.class);
+ if (ext != null) {
+ Arrays.asList(ext.value()).forEach(e -> setEnabled(e, false));
+ }
+ }
+
+ private void setEnabled(java.lang.Class<? extends TransformationExtension> ext, boolean enabled) {
+ try {
+ ext.getDeclaredField("isEnabled").set(null, enabled);
+ } catch (Exception e) {
+ e.printStackTrace();
+ fail("Failed to enable or disable transformation extension");
+ }
+ }
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/PostProcessingExtensionTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/PostProcessingExtensionTest.java
new file mode 100644
index 0000000..813bcfe
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/PostProcessingExtensionTest.java
@@ -0,0 +1,96 @@
+/*****************************************************************************
+ * Copyright (c) 2017 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.tests.regression;
+
+import static org.eclipse.papyrus.junit.matchers.MoreMatchers.greaterThan;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.notNullValue;
+import static org.hamcrest.CoreMatchers.startsWith;
+import static org.hamcrest.MatcherAssert.assertThat;
+
+import java.util.Objects;
+import java.util.stream.StreamSupport;
+
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.core.utils.ServiceUtils;
+import org.eclipse.papyrus.infra.gmfdiag.common.model.NotationUtils;
+import org.eclipse.papyrus.interoperability.rsa.tests.PostProcessor;
+import org.eclipse.papyrus.interoperability.rsa.tests.regression.AbstractMigrationRegressionTest.BatchMigration;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Type;
+import org.junit.Test;
+
+/**
+ * Specific regression tests for bugs in the post-processing phase of import.
+ */
+@BatchMigration
+@PluginResource({ "fragments/Blank Package.emx", "fragments/Class3.efx",
+ "fragments/Interface - Fragment.efx", "fragments/Package - Fragment.efx" })
+public class PostProcessingExtensionTest extends AbstractMigrationRegressionTest {
+
+ /**
+ * Initializes me.
+ */
+ public PostProcessingExtensionTest() {
+ super();
+ }
+
+ /**
+ * @see <a href="http://eclip.se/505330">bug 505330</a>
+ */
+ @TransformationExtensionClass(PostProcessor.class)
+ @Test
+ public void postProcessExtensionsInvoked_bug505330() throws Exception {
+ assertThat(rootPackage.getName(), is("123 Blank Package"));
+
+ Package fragment = rootPackage.getNestedPackage("123 Package - Fragment");
+ assertThat("Fragment package not renamed", fragment, notNullValue());
+
+ Type interface_ = fragment.getOwnedType("123 Interface2");
+ assertThat("Interface in fragment not renamed", interface_, notNullValue());
+
+ Type class_ = fragment.getOwnedType("123 Class2");
+ assertThat("Class in fragment not renamed", class_, notNullValue());
+ }
+
+ /**
+ * @see <a href="http://eclip.se/505330">bug 505330</a>
+ */
+ @TransformationExtensionClass(PostProcessor.WithQVTo.class)
+ @Test
+ public void postProcessExtensionWithQVTo_bug505330() throws Exception {
+ assertThat(rootPackage.getName(), is("123 Blank Package"));
+
+ Package fragment = rootPackage.getNestedPackage("123 Package - Fragment");
+ assertThat("Fragment package not renamed", fragment, notNullValue());
+
+ Type interface_ = fragment.getOwnedType("123 Interface2");
+ assertThat("Interface in fragment not renamed", interface_, notNullValue());
+
+ Type class_ = fragment.getOwnedType("123 Class2");
+ assertThat("Class in fragment not renamed", class_, notNullValue());
+
+ ModelSet modelSet = ServiceUtils.getInstance().getModelSet(editor.getServicesRegistry());
+ long count = StreamSupport.stream(NotationUtils.getAllNotations(modelSet).spliterator(), false)
+ .filter(Diagram.class::isInstance).map(Diagram.class::cast)
+ .map(Diagram::getName)
+ .filter(Objects::nonNull)
+ .peek(name -> assertThat("Diagram not renamed", name, startsWith("123 ")))
+ .count();
+ assertThat("No diagrams to assert", count, greaterThan(0L));
+ }
+
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/RegressionTests.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/RegressionTests.java
new file mode 100644
index 0000000..18f2109
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/RegressionTests.java
@@ -0,0 +1,32 @@
+/*****************************************************************************
+ * Copyright (c) 2016, 2017 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.interoperability.rsa.tests.regression;
+
+import org.junit.runner.RunWith;
+import org.junit.runners.Suite;
+import org.junit.runners.Suite.SuiteClasses;
+
+
+
+/**
+ * Suite of specific bug regression tests.
+ */
+@RunWith(Suite.class)
+@SuiteClasses({
+ StructureDiagramTest.class,
+ StereotypeApplicationsTest.class,
+ PostProcessingExtensionTest.class,
+})
+public class RegressionTests {
+ // All is specified in annotations
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/StereotypeApplicationsTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/StereotypeApplicationsTest.java
new file mode 100644
index 0000000..020f444
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/StereotypeApplicationsTest.java
@@ -0,0 +1,153 @@
+/*****************************************************************************
+ * Copyright (c) 2016 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.tests.regression;
+
+import static java.util.Spliterators.spliteratorUnknownSize;
+import static org.eclipse.papyrus.junit.matchers.MoreMatchers.lessThan;
+import static org.hamcrest.CoreMatchers.not;
+import static org.hamcrest.MatcherAssert.assertThat;
+
+import java.util.Collections;
+import java.util.List;
+import java.util.Set;
+import java.util.Spliterator;
+import java.util.stream.Stream;
+import java.util.stream.StreamSupport;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.m2m.qvt.oml.ExecutionContext;
+import org.eclipse.papyrus.interoperability.rsa.concurrent.ExecutorsPool;
+import org.eclipse.papyrus.interoperability.rsa.internal.extension.TransformationExtension;
+import org.eclipse.papyrus.interoperability.rsa.tests.regression.AbstractMigrationRegressionTest.TransformationExtensionClass;
+import org.eclipse.papyrus.interoperability.rsa.tests.regression.StereotypeApplicationsTest.MigrationTracker;
+import org.eclipse.papyrus.interoperability.rsa.transformation.ImportTransformation;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.eclipse.uml2.uml.Classifier;
+import org.eclipse.uml2.uml.Element;
+import org.junit.Test;
+
+/**
+ * Specific regression tests for bugs in access to stereotype applications
+ * in the context of transformation extensions.
+ */
+@TransformationExtensionClass(MigrationTracker.class)
+public class StereotypeApplicationsTest extends AbstractMigrationRegressionTest {
+
+ /**
+ * Initializes me.
+ */
+ public StereotypeApplicationsTest() {
+ super();
+ }
+
+ /**
+ * Verifies that transformation extensions have access to stereotype applications
+ * in the before and after phases, before dependency fixing and stereotype repair,
+ * as long as the RSA profile has already been imported to Papyrus at the same
+ * location.
+ *
+ * @see <a href="http://eclip.se/505330">bug 505330</a>
+ */
+ @Test
+ @PluginResource({ "bug505330/first.emx", "bug505330/today.profile.uml" })
+ @BatchMigration // because the batch launcher sets up the dependency analysis helper
+ public void extensionsFindAppliedStereotypes() throws Exception {
+ assertThat(MigrationTracker.foundBeforeMainMigration, not(lessThan(2L)));
+ assertThat(MigrationTracker.foundAfterMainMigration, not(lessThan(2L)));
+ }
+
+ //
+ // Test framework
+ //
+
+ public static class MigrationTracker implements TransformationExtension {
+
+ public static boolean isEnabled = false;
+
+ static long foundBeforeMainMigration;
+ static long foundAfterMainMigration;
+
+ private ImportTransformation transformation;
+
+ @Override
+ public Set<EPackage> getAdditionalSourceEPackages() {
+ return Collections.emptySet();
+ }
+
+ @Override
+ public void setResourceSet(ResourceSet resourceSet) {
+ // Pass
+ }
+
+ @Override
+ public void setExecutorsPool(ExecutorsPool executorsPool) {
+ // Pass
+ }
+
+ @Override
+ public void setTransformation(ImportTransformation importTransformation) {
+ // Re-initialize counts for this test
+ foundBeforeMainMigration = 0L;
+ foundAfterMainMigration = 0L;
+
+ this.transformation = importTransformation;
+ }
+
+ @Override
+ public IStatus executeBefore(ExecutionContext context, IProgressMonitor monitor) {
+ if (isEnabled) {
+ foundBeforeMainMigration = countStereotypes();
+ monitor.worked(1);
+ }
+ return Status.OK_STATUS;
+ }
+
+ @Override
+ public IStatus executeAfter(ExecutionContext context, IProgressMonitor monitor) {
+ if (isEnabled) {
+ foundAfterMainMigration = countStereotypes();
+ monitor.worked(1);
+ }
+ return Status.OK_STATUS;
+ }
+
+ long countStereotypes() {
+ List<EObject> models = transformation.getInOutUMLModel().getContents();
+ Stream<EObject> all = StreamSupport.stream(spliteratorUnknownSize(EcoreUtil.getAllContents(models, true),
+ Spliterator.DISTINCT | Spliterator.IMMUTABLE | Spliterator.NONNULL | Spliterator.ORDERED),
+ false);
+
+ return all.filter(Classifier.class::isInstance).map(Classifier.class::cast)
+ .filter(this::hasStereotype)
+ .count();
+ }
+
+ boolean hasStereotype(Element element) {
+ return (element.getAppliedStereotype("today::Foo") != null)
+ || (element.getAppliedStereotype("today::Bar") != null);
+ }
+
+ @Override
+ public int getNumberOfSteps() {
+ return isEnabled ? 2 : 0;
+ }
+
+ }
+}
diff --git a/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/StructureDiagramTest.java b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/StructureDiagramTest.java
new file mode 100644
index 0000000..51fb5c1
--- /dev/null
+++ b/rsa/tests/org.eclipse.papyrus.interoperability.rsa.tests/src/org/eclipse/papyrus/interoperability/rsa/tests/regression/StructureDiagramTest.java
@@ -0,0 +1,166 @@
+/*****************************************************************************
+ * Copyright (c) 2016 Christian W. Damus and others.
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * Christian W. Damus - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.interoperability.rsa.tests.regression;
+
+import static org.hamcrest.CoreMatchers.instanceOf;
+import static org.hamcrest.CoreMatchers.is;
+import static org.hamcrest.CoreMatchers.notNullValue;
+import static org.hamcrest.MatcherAssert.assertThat;
+import static org.junit.Assume.assumeThat;
+
+import java.util.List;
+
+import org.eclipse.gmf.runtime.notation.DecorationNode;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.gmf.runtime.notation.Node;
+import org.eclipse.gmf.runtime.notation.NotationPackage;
+import org.eclipse.gmf.runtime.notation.Shape;
+import org.eclipse.gmf.runtime.notation.Size;
+import org.eclipse.gmf.runtime.notation.View;
+import org.eclipse.papyrus.interoperability.rsa.tests.UML25HandlerExtension;
+import org.eclipse.papyrus.interoperability.rsa.tests.regression.AbstractMigrationRegressionTest.TransformationExtensionClass;
+import org.eclipse.papyrus.junit.utils.rules.PluginResource;
+import org.eclipse.papyrus.uml.diagram.composite.edit.parts.ClassCompositeCompartmentEditPart;
+import org.eclipse.papyrus.uml.diagram.composite.edit.parts.ClassCompositeEditPart;
+import org.eclipse.papyrus.uml.diagram.composite.edit.parts.ClassCompositeNameEditPart;
+import org.eclipse.papyrus.uml.diagram.composite.edit.parts.PortNameEditPart;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Port;
+import org.junit.Test;
+
+/**
+ * Specific regression tests for bugs in the import of structure diagrams.
+ */
+@TransformationExtensionClass(UML25HandlerExtension.class)
+public class StructureDiagramTest extends AbstractMigrationRegressionTest {
+
+ /**
+ * Initializes me.
+ */
+ public StructureDiagramTest() {
+ super();
+ }
+
+ /**
+ * @see <a href="http://eclip.se/461980">bug 461980</a>
+ */
+ @Test
+ @PluginResource("CompositeStructureDiagram.emx")
+ public void defaultFrameSize_bug461980() throws Exception {
+ // Need to open the diagram to convert the visual IDs to modern notation for assertions
+ Diagram diagram = openDiagram("StructureDiagram1");
+
+ Node frame = requireChild(diagram, ClassCompositeEditPart.VISUAL_ID, Node.class);
+ assertThat(frame.getLayoutConstraint(), instanceOf(Size.class));
+ Size size = (Size) frame.getLayoutConstraint();
+ assertThat(size.getWidth(), is(600));
+ assertThat(size.getHeight(), is(400));
+ }
+
+ /**
+ * @see <a href="http://eclip.se/496653">bug 496653</a>
+ */
+ @Test
+ @PluginResource("bug461980/CompositeStructureDiagram.emx")
+ public void dividerBetweenNameAndStructureCompartment_bug496653() throws Exception {
+ // Need to open the diagram to convert the visual IDs to modern notation for assertions
+ Diagram diagram = openDiagram("StructureDiagram1");
+
+ View frame = requireChild(diagram, ClassCompositeEditPart.VISUAL_ID);
+
+ View name = requireChild(frame, ClassCompositeNameEditPart.VISUAL_ID);
+ View structure = requireChild(frame, ClassCompositeCompartmentEditPart.VISUAL_ID);
+
+ @SuppressWarnings("unchecked")
+ List<? extends View> children = frame.getChildren();
+ assertThat(children, containsInOrder(name, structure));
+ }
+
+ /**
+ * Verify that non-conjugated ports in imported diagrams show the coloured interior
+ * as specified in the source diagram notation.
+ *
+ * @see <a href="http://eclip.se/498282">bug 498282</a>
+ */
+ @Test
+ @PluginResource("ConjugationExample.emx")
+ public void portNonconjugationVisuals_bug498282() throws Exception {
+ Class client = (Class) rootPackage.getOwnedType("Client");
+ Diagram csd = diagramsOf(client).findAny().get();
+ assumeThat(csd, notNullValue());
+
+ // All of these are not conjugated
+ streamAllContents(csd)
+ .filter(Shape.class::isInstance).map(Shape.class::cast)
+ .filter(s -> s.getElement() instanceof Port)
+ .forEach(p -> assertThat(p.eIsSet(NotationPackage.Literals.FILL_STYLE__FILL_COLOR), is(true)));
+ }
+
+ /**
+ * Verify that conjugated ports in imported diagrams show the white interior
+ * regardless of the coloration in the source (which used a different styling
+ * convention to show conjugation).
+ *
+ * @see <a href="http://eclip.se/498282">bug 498282</a>
+ */
+ @Test
+ @PluginResource("ConjugationExample.emx")
+ public void portConjugationVisuals_bug498282() throws Exception {
+ Class server = (Class) rootPackage.getOwnedType("Server");
+ Diagram csd = diagramsOf(server).findAny().get();
+ assumeThat(csd, notNullValue());
+
+ // All of these are conjugated
+ streamAllContents(csd)
+ .filter(Shape.class::isInstance).map(Shape.class::cast)
+ .filter(s -> s.getElement() instanceof Port)
+ .forEach(p -> assertThat(p.eIsSet(NotationPackage.Literals.FILL_STYLE__FILL_COLOR), is(false)));
+ }
+
+ /**
+ * Verify that Port name label is shown on diagram
+ *
+ * @see <a href="http://eclip.se/507860">bug 507860</a>
+ */
+ @Test
+ @PluginResource("bug507860/StructureWithPort.emx")
+ public void portNameLabelVisuals_bug507860() throws Exception {
+ // Need to open the diagram to convert the visual IDs to modern notation for assertions
+ Diagram diagram = openDiagram("compositediagram");
+
+ streamAllContents(diagram)
+ .filter(Shape.class::isInstance).map(Shape.class::cast)
+ .filter(s -> s.getElement() instanceof Port).forEach(p -> requireChild(p, PortNameEditPart.VISUAL_ID));
+
+ }
+
+ /**
+ * Verify that Port name label is shown on diagram
+ *
+ * @see <a href="http://eclip.se/507860">bug 507860</a>
+ */
+ @Test
+ @PluginResource("bug507860/StructureWithPort.emx")
+ public void portNameLabelElementUnset_bug511211() throws Exception {
+ // Need to open the diagram to convert the visual IDs to modern notation for assertions
+ Diagram diagram = openDiagram("compositediagram");
+
+ // assert that for all ports name label, no element is set,
+ streamAllContents(diagram)
+ .filter(DecorationNode.class::isInstance).map(DecorationNode.class::cast)
+ .filter(n -> n.getType().equals(PortNameEditPart.VISUAL_ID)).forEach(p -> assertThat(p.eIsSet(NotationPackage.Literals.VIEW__ELEMENT), is(false)));
+
+ }
+
+}
diff --git a/rsa/tests/pom.xml b/rsa/tests/pom.xml
new file mode 100644
index 0000000..2bc9505
--- /dev/null
+++ b/rsa/tests/pom.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<project>
+ <modelVersion>4.0.0</modelVersion>
+ <parent>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <artifactId>org.eclipse.papyrus.interoperability.tests.releng</artifactId>
+ <version>1.0.0-SNAPSHOT</version>
+ <relativePath>../../releng/tests/pom.xml</relativePath>
+ </parent>
+ <groupId>org.eclipse.papyrus.interoperability.tests</groupId>
+ <artifactId>org.eclipse.papyrus.interoperability.rsa.tests.plugins</artifactId>
+ <version>1.4.0-SNAPSHOT</version>
+ <packaging>pom</packaging>
+ <description>The top container of Rsa migration tests plug-ins for the Interoperability.</description>
+
+ <modules>
+ <module>org.eclipse.papyrus.interoperability.rsa.tests</module>
+ </modules>
+</project>
\ No newline at end of file
diff --git a/sysml14/releng/main/targetplatform/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen.target b/sysml14/releng/main/targetplatform/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen.target
index 90a107f..9e813d6 100644
--- a/sysml14/releng/main/targetplatform/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen.target
+++ b/sysml14/releng/main/targetplatform/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen.target
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317046">
+<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317047">
<locations>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.gmf.runtime.sdk.feature.group" version="1.10.0.201606071959"/>
@@ -13,16 +13,16 @@
<repository location="http://download.eclipse.org/modeling/mdt/uml2/updates/5.2.x"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.papyrus.sysml.diagram.feature.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.diagram.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.feature.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.diagram.feature.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.properties.feature.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.source.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.properties.feature.source.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.nattable.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.feature.source.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.nattable.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.nattable.feature.source.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.properties.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.properties.feature.source.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/extra/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
@@ -49,14 +49,24 @@
<unit id="org.eclipse.papyrus.sdk.feature.source.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/main/"/>
</location>
-<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.core.source.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.source.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.feature.feature.group" version="1.1.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.source.feature.feature.group" version="1.1.0.201703192131"/>
-<repository id="nattable" location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+<repository location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
+<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
</location>
</locations>
</target>
diff --git a/sysml14/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen.target b/sysml14/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen.target
index a7d2302..3de6d01 100644
--- a/sysml14/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen.target
+++ b/sysml14/releng/tests/targetplatform/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen/org.eclipse.papyrus.interoperability.sysml14.sysml.targetplatform.oxygen.target
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317045">
+<?pde version="3.8"?><target name="Tycho Tutorial" sequenceNumber="1465317046">
<locations>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.gmf.runtime.sdk.feature.group" version="1.10.0.201606071959"/>
@@ -13,16 +13,16 @@
<repository location="http://download.eclipse.org/modeling/mdt/uml2/updates/5.2.x"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.papyrus.sysml.diagram.feature.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.diagram.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.feature.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.diagram.feature.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.properties.feature.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.source.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.properties.feature.source.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.papyrus.sysml.nattable.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.feature.source.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.modelexplorer.feature.source.feature.group" version="0.0.0"/>
<unit id="org.eclipse.papyrus.sysml.nattable.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.nattable.feature.source.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.properties.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.papyrus.sysml.properties.feature.source.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/oxygen/extra/"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
@@ -30,6 +30,9 @@
<repository location="http://download.eclipse.org/modeling/gmp/gmf-notation/updates/releases"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.emf.compare.diagram.papyrus.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.emf.compare.ide.ui.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.emf.compare.uml2.feature.group" version="0.0.0"/>
<unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
<unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
<unit id="org.eclipse.equinox.p2.discovery.feature.feature.group" version="0.0.0"/>
@@ -37,9 +40,6 @@
<unit id="org.eclipse.ocl.uml.feature.group" version="0.0.0"/>
<unit id="org.eclipse.platform.feature.group" version="0.0.0"/>
<unit id="org.eclipse.rcp.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.emf.compare.diagram.papyrus.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.emf.compare.ide.ui.feature.group" version="0.0.0"/>
-<unit id="org.eclipse.emf.compare.uml2.feature.group" version="0.0.0"/>
<repository location="http://download.eclipse.org/releases/oxygen"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
@@ -57,14 +57,24 @@
<unit id="org.eclipse.papyrus.junit.feature.source.feature.group" version="0.0.0"/>
<repository location="https://hudson.eclipse.org/papyrus/view/Oxygen%20(Master)/job/Papyrus-Master-Developer/lastSuccessfulBuild/artifact/repository/"/>
</location>
-<location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
<unit id="org.eclipse.nebula.widgets.nattable.core.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.core.source.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.glazedlists.source.feature.feature.group" version="1.5.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.feature.feature.group" version="1.1.0.201703192131"/>
<unit id="org.eclipse.nebula.widgets.nattable.extension.nebula.source.feature.feature.group" version="1.1.0.201703192131"/>
-<repository id="nattable" location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+<repository location="http://download.eclipse.org/nattable/releases/1.5.0/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="org.apache.commons.io" version="2.2.0.v201405211200"/>
+<unit id="org.apache.commons.io.source" version="2.2.0.v201405211200"/>
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/R20160520211859/repository"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="true" type="InstallableUnit">
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="com.google.guava.source" version="21.0.0.v20170206-1425"/>
+<repository location="http://download.eclipse.org/tools/orbit/S-builds/S20170306214312/repository"/>
</location>
</locations>
</target>