diff options
author | radvorak | 2009-05-29 09:49:27 +0000 |
---|---|---|
committer | radvorak | 2009-05-29 09:49:27 +0000 |
commit | da61ce5bddfe916e3065c00af2d58985bb75e7fe (patch) | |
tree | 1f97cab41f53a258f38a2aab835896360b0169b9 | |
parent | f65fbb619e727ab566d8ef685b3b894808420012 (diff) | |
download | org.eclipse.qvto-20090602-1530.tar.gz org.eclipse.qvto-20090602-1530.tar.xz org.eclipse.qvto-20090602-1530.zip |
[278348] OMG Examples should be removed from CVS (CQ needed)v20090602-1530
27 files changed, 0 insertions, 974 deletions
diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/build.properties b/plugins/org.eclipse.m2m.qvt.oml.samples/build.properties index c7243bec5..bda3657ca 100644 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/build.properties +++ b/plugins/org.eclipse.m2m.qvt.oml.samples/build.properties @@ -21,7 +21,6 @@ bin.includes = plugin.xml,\ about.ini,\ about.mappings,\ about.properties,\ - projects/org.eclipse.m2m.qvt.oml.examples.omg/,\ projects/org.eclipse.m2m.qvt.oml.examples.blackbox/ output.. = bin/ source.. = src/,\ diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/plugin.xml b/plugins/org.eclipse.m2m.qvt.oml.samples/plugin.xml index ee821a820..5e5da1e2e 100644 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/plugin.xml +++ b/plugins/org.eclipse.m2m.qvt.oml.samples/plugin.xml @@ -252,35 +252,6 @@ </editor> </extension> - - <extension - id="org.eclipse.m2m.qvt.oml.examples.omg.OMG_Examples" - point="org.eclipse.ui.newWizards"> - <wizard - category="org.eclipse.ui.Examples/org.eclipse.m2m.qvt.oml.samples.category" - class="org.eclipse.emf.common.ui.wizard.ExampleInstallerWizard" - icon="icons/pr-MDA.gif" - id="org.eclipse.m2m.qvt.oml.examples.omg.OMG_Examples" - name="%OMG_Examples_name" - project="true"> - </wizard> - </extension> - <extension - point="org.eclipse.emf.common.ui.examples"> - <example - pageImage="icons/pr-MDA_wizard.gif" - wizardID="org.eclipse.m2m.qvt.oml.examples.omg.OMG_Examples"> - <projectDescriptor - contentURI="projects/org.eclipse.m2m.qvt.oml.examples.omg/" - description="%OMG_Examples_description" - name="org.eclipse.m2m.qvt.oml.examples.omg"> - </projectDescriptor> - <fileToOpen - location="org.eclipse.m2m.qvt.oml.examples.omg/transform/Uml2Rdb.qvto"> - </fileToOpen> - </example> - </extension> - <extension id="org.eclipse.m2m.qvt.oml.examples.Blackbox" point="org.eclipse.ui.newWizards"> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/.project b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/.project deleted file mode 100644 index 3f873b9e6..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/.project +++ /dev/null @@ -1,32 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<projectDescription> - <name>org.eclipse.m2m.qvt.oml.examples.omg</name> - <comment></comment> - <projects> - </projects> - <buildSpec> - <buildCommand> - <name>org.eclipse.m2m.qvt.oml.QvtBuilder</name> - <arguments> - <dictionary> - <key>src_container</key> - <value>transform</value> - </dictionary> - </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.TransformationNature</nature> - <nature>org.eclipse.pde.PluginNature</nature> - </natures> -</projectDescription> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/.settings/org.eclipse.m2m.qvt.oml.mmodel.urimap b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/.settings/org.eclipse.m2m.qvt.oml.mmodel.urimap deleted file mode 100644 index 70f9d61e0..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/.settings/org.eclipse.m2m.qvt.oml.mmodel.urimap +++ /dev/null @@ -1,8 +0,0 @@ -<?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://org.eclipse.m2m.qvt.oml/examples/omg/SimpleRdbms" targetURI="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/models/SimpleRdbms.ecore"/> - <mapping sourceURI="http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleUML" targetURI="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/models/SimpleUml.ecore"/> - <mapping sourceURI="http://org.eclipse.m2m.qvt.oml/examples/omg/BOOKS" targetURI="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/models/BOOKS.ecore"/> - <mapping sourceURI="http://org.eclipse.m2m.qvt.oml/examples/omg/PUB" targetURI="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/models/PUB.ecore"/> - <mapping sourceURI="http://org.eclipse.m2m.qvt.oml/examples/omg/SPEM" targetURI="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/models/SPEM.ecore"/> -</uriMap:MappingContainer> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Book.xmi b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Book.xmi deleted file mode 100644 index bad0721c8..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Book.xmi +++ /dev/null @@ -1,5 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<BOOKS:Book xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:BOOKS="http://org.eclipse.m2m.qvt.oml/examples/omg/BOOKS.ecore" xsi:schemaLocation="http://org.eclipse.m2m.qvt.oml/examples/omg/BOOKS.ecore models/BOOKS.ecore" title="Hamlet"> - <chapters title="Begin" nbPages="10"/> - <chapters title="end" nbPages="20"/> -</BOOKS:Book> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Book2Publication.launch b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Book2Publication.launch deleted file mode 100644 index 27c0b2cef..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Book2Publication.launch +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<launchConfiguration type="org.eclipse.m2m.qvt.oml.QvtTransformation"> -<booleanAttribute key="org.eclipse.m2m.qvt.oml.interpreter.clearContents1" value="true"/> -<booleanAttribute key="org.eclipse.m2m.qvt.oml.interpreter.clearContents2" value="true"/> -<mapAttribute key="org.eclipse.m2m.qvt.oml.interpreter.configurationProperties"/> -<intAttribute key="org.eclipse.m2m.qvt.oml.interpreter.elemCount" value="2"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.featureName1" value=""/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.featureName2" value=""/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.module" value="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/transform/Book2Publication.qvto"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetModel1" value="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/Book.xmi"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetModel2" value="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/Pub.xmi"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetType1" value="NEW_MODEL"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetType2" value="NEW_MODEL"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.traceFile" value=""/> -<booleanAttribute key="org.eclipse.m2m.qvt.oml.interpreter.useTraceFile" value="false"/> -</launchConfiguration> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Encapsulation.launch b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Encapsulation.launch deleted file mode 100644 index bf4ae0b64..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Encapsulation.launch +++ /dev/null @@ -1,12 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<launchConfiguration type="org.eclipse.m2m.qvt.oml.QvtTransformation"> -<booleanAttribute key="org.eclipse.m2m.qvt.oml.interpreter.clearContents1" value="true"/> -<mapAttribute key="org.eclipse.m2m.qvt.oml.interpreter.configurationProperties"/> -<intAttribute key="org.eclipse.m2m.qvt.oml.interpreter.elemCount" value="1"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.featureName1" value=""/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.module" value="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/transform/Encapsulation.qvto"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetModel1" value="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/Encapsulation.uml"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetType1" value="NEW_MODEL"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.traceFile" value=""/> -<booleanAttribute key="org.eclipse.m2m.qvt.oml.interpreter.useTraceFile" value="false"/> -</launchConfiguration> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Encapsulation.uml b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Encapsulation.uml deleted file mode 100644 index fc65a3a33..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Encapsulation.uml +++ /dev/null @@ -1,10 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<uml:Model xmi:version="2.1" xmlns:xmi="http://schema.omg.org/spec/XMI/2.1" xmlns:uml="http://www.eclipse.org/uml2/2.1.0/UML" xmi:id="_M3y7QF4rEd2nv5DwWMuspA" name="Encapsulation"> - <packagedElement xmi:type="uml:Package" xmi:id="_KH2GsF4sEd2nv5DwWMuspA" name="Department"> - <packagedElement xmi:type="uml:Class" xmi:id="_Tpmw0F4sEd2nv5DwWMuspA" name="Employee"> - <ownedAttribute xmi:id="_U1TH4F4sEd2nv5DwWMuspA" name="manager" type="_Tpmw0F4sEd2nv5DwWMuspA"/> - <ownedAttribute xmi:id="_uBo_EF4tEd2nv5DwWMuspA" name="ID" type="_eILzEF4tEd2nv5DwWMuspA"/> - </packagedElement> - <packagedElement xmi:type="uml:DataType" xmi:id="_eILzEF4tEd2nv5DwWMuspA" name="Identifier"/> - </packagedElement> -</uml:Model> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/META-INF/MANIFEST.MF b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/META-INF/MANIFEST.MF deleted file mode 100644 index bad11db4f..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/META-INF/MANIFEST.MF +++ /dev/null @@ -1,8 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: %pluginName -Bundle-SymbolicName: org.eclipse.m2m.qvt.oml.examples.omg;singleton:=true -Bundle-Version: 1.0.0 -Bundle-Vendor: %providerName -Bundle-Localization: plugin -Require-Bundle: org.eclipse.emf.common.ui diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/OMG_conformance_notes.txt b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/OMG_conformance_notes.txt deleted file mode 100644 index 8631f8823..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/OMG_conformance_notes.txt +++ /dev/null @@ -1,22 +0,0 @@ -1) self.attribute->object(a) Column {…}" as a shorthand for "self. attribute->xcollect(a| object Column {…}) - is not supported - -2) Meta-model definition embedded in a compilation unit is not supported - -3) No implicit meta-model resolution by name, explicit modeltype definition is required - -4) isKindOf(), etc. aliases not supported, migrated to oclIsKindOf() - -5) The 'Encapsulation' example has been adjusted to omg.uml2 metamodel - to leverage existing models as input - -6) merge, inherits do not support referencing by local name (qualified only) - -7) Composite assignments are not supported -constraint := { - self.constraint[isStereotypedBy("precondition")]->map createPrecondition(); - self.constraint[isStereotypedBy("goal")]->map createGoal(); -}; - -8) supplier->resolveone(WorkDefinition) not supported, migrated as - supplier.resolveone(WorkDefinition)
\ No newline at end of file diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Pub.xmi b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Pub.xmi deleted file mode 100644 index ebb186dc2..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Pub.xmi +++ /dev/null @@ -1,2 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<PUB:Publication xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:PUB="http://org.eclipse.m2m.qvt.oml/examples/omg/PUB.ecore" xsi:schemaLocation="http://org.eclipse.m2m.qvt.oml/examples/omg/PUB.ecore models/PUB.ecore" title="Hamlet" nbPages="30"/> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/RDBMS.xmi b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/RDBMS.xmi deleted file mode 100644 index 3691751f6..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/RDBMS.xmi +++ /dev/null @@ -1,13 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SimpleRdbms="http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleRdbms" xsi:schemaLocation="http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleRdbms models/SimpleRdbms.ecore"> - <SimpleRdbms:Table name="t_Foo"> - <column name="fooId" kind="primary" type="VARCHAR"/> - <key name="k_Foo" column="/0/@column.0"/> - </SimpleRdbms:Table> - <SimpleRdbms:Table name="t_Bar"> - <column name="barId" kind="primary" type="VARCHAR"/> - <column name="Foo_fooId" kind="foreign" type="VARCHAR"/> - <key name="k_Bar" column="/1/@column.0"/> - <foreignKey name="f_fooToBar" column="/1/@column.1" refersTo="/0/@key"/> - </SimpleRdbms:Table> -</xmi:XMI> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/UML.xmi b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/UML.xmi deleted file mode 100644 index b4f8b2b65..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/UML.xmi +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<SimpleUML:Package xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SimpleUML="http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleUml" xsi:schemaLocation="http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleUml models/SimpleUml.ecore"> - <elements xsi:type="SimpleUML:Class" name="Foo" kind="persistent"> - <attribute name="fooId" kind="primary" type="//@elements.2"/> - </elements> - <elements xsi:type="SimpleUML:Class" name="Bar" kind="persistent"> - <attribute name="barId" kind="primary" type="//@elements.2"/> - </elements> - <elements xsi:type="SimpleUML:PrimitiveDataType" name="String"/> - <elements xsi:type="SimpleUML:Association" name="fooToBar" kind="persistent" source="//@elements.0" destination="//@elements.1"/> -</SimpleUML:Package> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Uml2Rdb.launch b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Uml2Rdb.launch deleted file mode 100644 index c82273c06..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/Uml2Rdb.launch +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="UTF-8" standalone="no"?> -<launchConfiguration type="org.eclipse.m2m.qvt.oml.QvtTransformation"> -<booleanAttribute key="org.eclipse.m2m.qvt.oml.interpreter.clearContents1" value="true"/> -<booleanAttribute key="org.eclipse.m2m.qvt.oml.interpreter.clearContents2" value="true"/> -<mapAttribute key="org.eclipse.m2m.qvt.oml.interpreter.configurationProperties"/> -<intAttribute key="org.eclipse.m2m.qvt.oml.interpreter.elemCount" value="2"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.featureName1" value=""/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.featureName2" value=""/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.module" value="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/transform/Uml2Rdb.qvto"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetModel1" value="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/UML.xmi"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetModel2" value="platform:/resource/org.eclipse.m2m.qvt.oml.examples.omg/RDBMS.xmi"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetType1" value="NEW_MODEL"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.targetType2" value="NEW_MODEL"/> -<stringAttribute key="org.eclipse.m2m.qvt.oml.interpreter.traceFile" value=""/> -<booleanAttribute key="org.eclipse.m2m.qvt.oml.interpreter.useTraceFile" value="false"/> -</launchConfiguration> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/build.properties b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/build.properties deleted file mode 100644 index 9674ced4e..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/build.properties +++ /dev/null @@ -1,16 +0,0 @@ -bin.includes = META-INF/,\ - plugin.properties,\ - transform/,\ - models/,\ - build.properties,\ - Uml2Rdb.launch,\ - UML.xmi,\ - RDBMS.xmi,\ - Pub.xmi,\ - OMG_conformance_notes.txt,\ - Encapsulation.uml,\ - Encapsulation.launch,\ - Book2Publication.launch,\ - Book.xmi,\ - .settings/,\ - .project diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/BOOKS.ecore b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/BOOKS.ecore deleted file mode 100644 index 90ec68207..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/BOOKS.ecore +++ /dev/null @@ -1,18 +0,0 @@ -<?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="BOOKS" - nsURI="http://org.eclipse.m2m.qvt.oml/examples/omg/BOOKS.ecore" nsPrefix="BOOKS"> - <eClassifiers xsi:type="ecore:EClass" name="Chapter"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="nbPages" lowerBound="1" - eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Book"> - <eStructuralFeatures xsi:type="ecore:EReference" name="chapters" upperBound="-1" - eType="#//Chapter" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - </eClassifiers> -</ecore:EPackage> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/PUB.ecore b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/PUB.ecore deleted file mode 100644 index b500705a5..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/PUB.ecore +++ /dev/null @@ -1,12 +0,0 @@ -<?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="PUB" - nsURI="http://org.eclipse.m2m.qvt.oml/examples/omg/PUB.ecore" nsPrefix="PUB"> - <eClassifiers xsi:type="ecore:EClass" name="Publication"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="title" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="nbPages" lowerBound="1" - eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> - </eClassifiers> -</ecore:EPackage> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SPEM.ecore b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SPEM.ecore deleted file mode 100644 index c62d78004..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SPEM.ecore +++ /dev/null @@ -1,279 +0,0 @@ -<?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="spem" - nsURI="http://org.eclipse.m2m.qvt.oml/examples/omg/SPEM" nsPrefix="spem"> - <eClassifiers xsi:type="ecore:EClass" name="Abstraction" eSuperTypes="#//Dependency"/> - <eClassifiers xsi:type="ecore:EClass" name="Action" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="state" ordered="false" - lowerBound="1" eType="#//State" eOpposite="#//State/entry"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ActionState" eSuperTypes="#//SimpleState"/> - <eClassifiers xsi:type="ecore:EClass" name="Activity" eSuperTypes="#//WorkDefinition"> - <eStructuralFeatures xsi:type="ecore:EReference" name="assistant" unique="false" - lowerBound="1" upperBound="-1" eType="#//ProcessRole" eOpposite="#//ProcessRole/activity"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="step" unique="false" lowerBound="1" - upperBound="-1" eType="#//Step"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ActivityGraph" eSuperTypes="#//StateMachine"/> - <eClassifiers xsi:type="ecore:EClass" name="ActivityParameter" eSuperTypes="#//Parameter"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="hasWorkPerArtifact" lowerBound="1" - eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Association" eSuperTypes="#//Relationship"> - <eStructuralFeatures xsi:type="ecore:EReference" name="connection" unique="false" - lowerBound="1" upperBound="-1" eType="#//AssociationEnd" eOpposite="#//AssociationEnd/association"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="AssociationEnd" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="association" ordered="false" - lowerBound="1" eType="#//Association" eOpposite="#//Association/connection"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="aggregation" ordered="false" - lowerBound="1" eType="#//AggregationKind"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="isNavigable" lowerBound="1" - eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" ordered="false" - lowerBound="1" eType="#//Multiplicity"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="participant" ordered="false" - lowerBound="1" eType="#//Classifier" eOpposite="#//Classifier/association"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="BehavioralFeature" eSuperTypes="#//Feature"> - <eStructuralFeatures xsi:type="ecore:EReference" name="parameter" unique="false" - lowerBound="1" upperBound="-1" eType="#//Parameter" eOpposite="#//Parameter/behavioralFeature"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="BooleanExpression" eSuperTypes="#//Expression"/> - <eClassifiers xsi:type="ecore:EClass" name="CallAction" eSuperTypes="#//Action"> - <eStructuralFeatures xsi:type="ecore:EReference" name="operation" ordered="false" - lowerBound="1" eType="#//Operation" eOpposite="#//Operation/callAction"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Categorizes" eSuperTypes="#//Usage"/> - <eClassifiers xsi:type="ecore:EClass" name="Classifier" eSuperTypes="#//GeneralizableElement #//Namespace"> - <eStructuralFeatures xsi:type="ecore:EReference" name="association" unique="false" - lowerBound="1" upperBound="-1" eType="#//AssociationEnd" eOpposite="#//AssociationEnd/participant"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="typedParameter" unique="false" - lowerBound="1" upperBound="-1" eType="#//Parameter" eOpposite="#//Parameter/type"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ClassifierInState" eSuperTypes="#//Classifier"> - <eStructuralFeatures xsi:type="ecore:EReference" name="inState" unique="false" - lowerBound="1" upperBound="-1" eType="#//State"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="type" ordered="false" lowerBound="1" - eType="#//Classifier"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="CompositeState" eSuperTypes="#//State"> - <eStructuralFeatures xsi:type="ecore:EReference" name="subvertex" unique="false" - lowerBound="1" upperBound="-1" eType="#//StateVertex" eOpposite="#//StateVertex/container"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Constraint" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="constrainedElement" unique="false" - lowerBound="1" upperBound="-1" eType="#//ModelElement" eOpposite="#//ModelElement/constraint"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Dependency" eSuperTypes="#//Relationship"> - <eStructuralFeatures xsi:type="ecore:EReference" name="client" ordered="false" - lowerBound="1" eType="#//ModelElement" eOpposite="#//ModelElement/clientDependency"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="supplier" ordered="false" - lowerBound="1" eType="#//ModelElement" eOpposite="#//ModelElement/supplierDependency"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Discipline" eSuperTypes="#//ProcessComponent"/> - <eClassifiers xsi:type="ecore:EClass" name="Element"/> - <eClassifiers xsi:type="ecore:EClass" name="Expression"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="body" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="language" ordered="false" - lowerBound="1" eType="#//Name"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ExternalDescription" eSuperTypes="#//PresentationElement"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="content" lowerBound="1" - eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="language" lowerBound="1" - eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="medium" lowerBound="1" - eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Feature" eSuperTypes="#//ModelElement"/> - <eClassifiers xsi:type="ecore:EClass" name="FinalState" eSuperTypes="#//State"/> - <eClassifiers xsi:type="ecore:EClass" name="GeneralizableElement" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="generalization" unique="false" - lowerBound="1" upperBound="-1" eType="#//Generalization" eOpposite="#//Generalization/child"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="specialization" unique="false" - lowerBound="1" upperBound="-1" eType="#//Generalization" eOpposite="#//Generalization/parent"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Generalization" eSuperTypes="#//Relationship"> - <eStructuralFeatures xsi:type="ecore:EReference" name="child" ordered="false" - lowerBound="1" eType="#//GeneralizableElement" eOpposite="#//GeneralizableElement/generalization"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="parent" ordered="false" - lowerBound="1" eType="#//GeneralizableElement" eOpposite="#//GeneralizableElement/specialization"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Goal" eSuperTypes="#//Constraint"/> - <eClassifiers xsi:type="ecore:EClass" name="Guard" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="expression" ordered="false" - lowerBound="1" eType="#//BooleanExpression"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="transition" ordered="false" - lowerBound="1" eType="#//Transition" eOpposite="#//Transition/guard"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Guidance" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="annotatedElement" unique="false" - lowerBound="1" upperBound="-1" eType="#//ModelElement"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="kind" ordered="false" lowerBound="1" - eType="#//GuidanceKind" eOpposite="#//GuidanceKind/guidance"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="GuidanceKind" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="guidance" unique="false" - lowerBound="1" upperBound="-1" eType="#//Guidance" eOpposite="#//Guidance/kind"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Impacts" eSuperTypes="#//Usage"/> - <eClassifiers xsi:type="ecore:EClass" name="Import" eSuperTypes="#//Permission"/> - <eClassifiers xsi:type="ecore:EClass" name="Iteration" eSuperTypes="#//WorkDefinition"/> - <eClassifiers xsi:type="ecore:EClass" name="Lifecycle" eSuperTypes="#//WorkDefinition"> - <eStructuralFeatures xsi:type="ecore:EReference" name="governedProcesses" unique="false" - lowerBound="1" upperBound="-1" eType="#//Process" eOpposite="#//Process/governingLifecycle"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ModelElement" eSuperTypes="#//Element"> - <eStructuralFeatures xsi:type="ecore:EReference" name="constraint" unique="false" - lowerBound="1" upperBound="-1" eType="#//Constraint" eOpposite="#//Constraint/constrainedElement"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="clientDependency" unique="false" - lowerBound="1" upperBound="-1" eType="#//Dependency" eOpposite="#//Dependency/client"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="supplierDependency" unique="false" - lowerBound="1" upperBound="-1" eType="#//Dependency" eOpposite="#//Dependency/supplier"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="behavior" unique="false" - lowerBound="1" upperBound="-1" eType="#//StateMachine" eOpposite="#//StateMachine/context"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="presentation" unique="false" - lowerBound="1" upperBound="-1" eType="#//PresentationElement" eOpposite="#//PresentationElement/subject"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="namespace" ordered="false" - lowerBound="1" eType="#//Namespace" eOpposite="#//Namespace/ownedElement"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Multiplicity"> - <eStructuralFeatures xsi:type="ecore:EReference" name="range" unique="false" lowerBound="1" - upperBound="-1" eType="#//MultiplicityRange" eOpposite="#//MultiplicityRange/multiplicity"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="MultiplicityRange"> - <eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" ordered="false" - lowerBound="1" eType="#//Multiplicity" eOpposite="#//Multiplicity/range"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="lower" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="upper" ordered="false" - lowerBound="1" eType="#//UnlimitedInteger"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Namespace" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="ownedElement" unique="false" - lowerBound="1" upperBound="-1" eType="#//ModelElement" eOpposite="#//ModelElement/namespace"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ObjectFlowState" eSuperTypes="#//SimpleState"> - <eStructuralFeatures xsi:type="ecore:EReference" name="parameter" unique="false" - lowerBound="1" upperBound="-1" eType="#//Parameter" eOpposite="#//Parameter/state"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="type" ordered="false" lowerBound="1" - eType="#//Classifier"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Operation" eSuperTypes="#//BehavioralFeature"> - <eStructuralFeatures xsi:type="ecore:EReference" name="callAction" unique="false" - lowerBound="1" upperBound="-1" eType="#//CallAction" eOpposite="#//CallAction/operation"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Package" eSuperTypes="#//Namespace"/> - <eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="behavioralFeature" ordered="false" - lowerBound="1" eType="#//BehavioralFeature" eOpposite="#//BehavioralFeature/parameter"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="type" ordered="false" lowerBound="1" - eType="#//Classifier" eOpposite="#//Classifier/typedParameter"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="state" unique="false" lowerBound="1" - upperBound="-1" eType="#//ObjectFlowState" eOpposite="#//ObjectFlowState/parameter"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" ordered="false" lowerBound="1" - eType="#//ParameterDirectionKind"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Permission" eSuperTypes="#//Dependency"/> - <eClassifiers xsi:type="ecore:EClass" name="Phase" eSuperTypes="#//WorkDefinition"/> - <eClassifiers xsi:type="ecore:EClass" name="Precedes" eSuperTypes="#//Usage"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" ordered="false" lowerBound="1" - eType="#//PrecedenceKind"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Precondition" eSuperTypes="#//Constraint"/> - <eClassifiers xsi:type="ecore:EClass" name="PresentationElement" eSuperTypes="#//Element"> - <eStructuralFeatures xsi:type="ecore:EReference" name="subject" ordered="false" - lowerBound="1" eType="#//ModelElement" eOpposite="#//ModelElement/presentation"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Process" eSuperTypes="#//ProcessComponent"> - <eStructuralFeatures xsi:type="ecore:EReference" name="governingLifecycle" ordered="false" - lowerBound="1" eType="#//Lifecycle" eOpposite="#//Lifecycle/governedProcesses"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ProcessComponent" eSuperTypes="#//Package"/> - <eClassifiers xsi:type="ecore:EClass" name="ProcessPerformer" eSuperTypes="#//Classifier"> - <eStructuralFeatures xsi:type="ecore:EReference" name="work" unique="false" lowerBound="1" - upperBound="-1" eType="#//WorkDefinition" eOpposite="#//WorkDefinition/performer"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ProcessRole" eSuperTypes="#//ProcessPerformer"> - <eStructuralFeatures xsi:type="ecore:EReference" name="activity" unique="false" - lowerBound="1" upperBound="-1" eType="#//Activity" eOpposite="#//Activity/assistant"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="workProduct" unique="false" - lowerBound="1" upperBound="-1" eType="#//WorkProduct" eOpposite="#//WorkProduct/responsibleRole"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="PseudoState" eSuperTypes="#//StateVertex"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" ordered="false" lowerBound="1" - eType="#//PseudoStateKind"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="RefersTo" eSuperTypes="#//Usage"/> - <eClassifiers xsi:type="ecore:EClass" name="Relationship" eSuperTypes="#//ModelElement"/> - <eClassifiers xsi:type="ecore:EClass" name="SimpleState" eSuperTypes="#//State"/> - <eClassifiers xsi:type="ecore:EClass" name="State" eSuperTypes="#//StateVertex"> - <eStructuralFeatures xsi:type="ecore:EReference" name="entry" ordered="false" - lowerBound="1" eType="#//Action" eOpposite="#//Action/state"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="stateMachine" ordered="false" - lowerBound="1" eType="#//StateMachine" eOpposite="#//StateMachine/top_"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="StateMachine" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="context" ordered="false" - lowerBound="1" eType="#//ModelElement" eOpposite="#//ModelElement/behavior"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="top_" ordered="false" lowerBound="1" - eType="#//State" eOpposite="#//State/stateMachine"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="transitions" unique="false" - lowerBound="1" upperBound="-1" eType="#//Transition" eOpposite="#//Transition/stateMachine"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="StateVertex" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="container" ordered="false" - lowerBound="1" eType="#//CompositeState" eOpposite="#//CompositeState/subvertex"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="incoming" unique="false" - lowerBound="1" upperBound="-1" eType="#//Transition" eOpposite="#//Transition/target"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="outgoing" unique="false" - lowerBound="1" upperBound="-1" eType="#//Transition" eOpposite="#//Transition/source"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Step" eSuperTypes="#//ActionState"/> - <eClassifiers xsi:type="ecore:EClass" name="Trace" eSuperTypes="#//Abstraction"/> - <eClassifiers xsi:type="ecore:EClass" name="Transition" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="stateMachine" ordered="false" - lowerBound="1" eType="#//StateMachine" eOpposite="#//StateMachine/transitions"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="target" ordered="false" - lowerBound="1" eType="#//StateVertex" eOpposite="#//StateVertex/incoming"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="source" ordered="false" - lowerBound="1" eType="#//StateVertex" eOpposite="#//StateVertex/outgoing"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="guard" ordered="false" - lowerBound="1" eType="#//Guard" eOpposite="#//Guard/transition"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Usage" eSuperTypes="#//Dependency"/> - <eClassifiers xsi:type="ecore:EClass" name="WorkDefinition" eSuperTypes="#//Operation"> - <eStructuralFeatures xsi:type="ecore:EReference" name="performer" ordered="false" - lowerBound="1" eType="#//ProcessPerformer" eOpposite="#//ProcessPerformer/work"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="goal" ordered="false" lowerBound="1" - eType="#//Goal"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="parentWork" unique="false" - lowerBound="1" upperBound="-1" eType="#//WorkDefinition" eOpposite="#//WorkDefinition/subWork"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="subWork" unique="false" - lowerBound="1" upperBound="-1" eType="#//WorkDefinition" eOpposite="#//WorkDefinition/parentWork"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="precondition" ordered="false" - lowerBound="1" eType="#//Precondition"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="WorkProduct" eSuperTypes="#//Classifier"> - <eStructuralFeatures xsi:type="ecore:EReference" name="responsibleRole" ordered="false" - lowerBound="1" eType="#//ProcessRole" eOpposite="#//ProcessRole/workProduct"/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="isDeliverable" lowerBound="1" - eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="kind" ordered="false" lowerBound="1" - eType="#//WorkProductKind" eOpposite="#//WorkProductKind/workProduct"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="WorkProductKind" eSuperTypes="#//ModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="workProduct" unique="false" - lowerBound="1" upperBound="-1" eType="#//WorkProduct" eOpposite="#//WorkProduct/kind"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EEnum" name="AggregationKind"/> - <eClassifiers xsi:type="ecore:EClass" name="Name"/> - <eClassifiers xsi:type="ecore:EClass" name="UnlimitedInteger"/> - <eClassifiers xsi:type="ecore:EEnum" name="ParameterDirectionKind"/> - <eClassifiers xsi:type="ecore:EEnum" name="PrecedenceKind"/> - <eClassifiers xsi:type="ecore:EEnum" name="PseudoStateKind"/> -</ecore:EPackage> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SimpleRdbms.ecore b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SimpleRdbms.ecore deleted file mode 100644 index 5f051b1d6..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SimpleRdbms.ecore +++ /dev/null @@ -1,36 +0,0 @@ -<?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="SimpleRdbms" - nsURI="http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleRdbms" nsPrefix="SimpleRdbms"> - <eClassifiers xsi:type="ecore:EClass" name="Table"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - <eStructuralFeatures xsi:type="ecore:EReference" name="column" upperBound="-1" - eType="#//Column" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="key" eType="#//Key" containment="true"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="foreignKey" upperBound="-1" - eType="#//ForeignKey" containment="true"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Column"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Key"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - <eStructuralFeatures xsi:type="ecore:EReference" name="column" upperBound="-1" - eType="#//Column"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="ForeignKey"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - <eStructuralFeatures xsi:type="ecore:EReference" name="column" upperBound="-1" - eType="#//Column"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="refersTo" eType="#//Key"/> - </eClassifiers> -</ecore:EPackage> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SimpleUml.ecore b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SimpleUml.ecore deleted file mode 100644 index eb048b6fc..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/SimpleUml.ecore +++ /dev/null @@ -1,30 +0,0 @@ -<?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="SimpleUML" - nsURI="http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleUml" nsPrefix="SimpleUML"> - <eClassifiers xsi:type="ecore:EClass" name="Classifier" eSuperTypes="#//PackageElement"/> - <eClassifiers xsi:type="ecore:EClass" name="Attribute" eSuperTypes="#//UMLModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//Classifier"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Class" eSuperTypes="#//Classifier"> - <eStructuralFeatures xsi:type="ecore:EReference" name="attribute" upperBound="-1" - eType="#//Attribute" containment="true"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="Association" eSuperTypes="#//PackageElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="source" eType="#//Class"/> - <eStructuralFeatures xsi:type="ecore:EReference" name="destination" eType="#//Class"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="PrimitiveDataType" eSuperTypes="#//Classifier"/> - <eClassifiers xsi:type="ecore:EClass" name="Package" eSuperTypes="#//UMLModelElement"> - <eStructuralFeatures xsi:type="ecore:EReference" name="elements" upperBound="-1" - eType="#//PackageElement" containment="true"/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="UMLModelElement"> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" - defaultValueLiteral=""/> - </eClassifiers> - <eClassifiers xsi:type="ecore:EClass" name="PackageElement" abstract="true" eSuperTypes="#//UMLModelElement"/> -</ecore:EPackage> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/UML.emof b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/UML.emof deleted file mode 100644 index fd9725d9a..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/models/UML.emof +++ /dev/null @@ -1,40 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<emof:Package xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" xmlns:emof="http://schema.omg.org/spec/MOF/2.0/emof.xml" xmi:id="o374" - name="uml" uri="http://org.eclipse.m2m.qvt.oml/examples/omg/UML"> - <ownedType xmi:type="emof:Class" xmi:id="o375" name="ModelElement"> - <ownedAttribute xmi:id="o376" name="name"/> - <ownedAttribute xmi:id="o377" name="constraint" isOrdered="true" isUnique="false" - upper="*" type="o386"/> - <ownedAttribute xmi:id="o378" name="clientDependency" isOrdered="true" isUnique="false" - upper="*" type="o393" opposite="o394"/> - <ownedAttribute xmi:id="o379" name="supplierDependency" isOrdered="true" isUnique="false" - upper="*" type="o393" opposite="o395"/> - </ownedType> - <ownedType xmi:type="emof:Class" xmi:id="o380" name="Classifier" superClass="o375"/> - <ownedType xmi:type="emof:Class" xmi:id="o381" name="Model" superClass="o375"/> - <ownedType xmi:type="emof:Class" xmi:id="o382" name="UseCase" superClass="o380"/> - <ownedType xmi:type="emof:Class" xmi:id="o383" name="Actor" superClass="o375"/> - <ownedType xmi:type="emof:Class" xmi:id="o384" name="Package" superClass="o375"> - <ownedAttribute xmi:id="o385" name="ownedElement" isOrdered="true" isUnique="false" - upper="*" type="o375"/> - </ownedType> - <ownedType xmi:type="emof:Class" xmi:id="o386" name="Constraint" superClass="o375"> - <ownedAttribute xmi:id="o387" name="body"/> - </ownedType> - <ownedType xmi:type="emof:Class" xmi:id="o388" name="Association" superClass="o375"> - <ownedAttribute xmi:id="o389" name="associationEnd" isOrdered="true" isUnique="false" - upper="*" type="o390" opposite="o391"/> - </ownedType> - <ownedType xmi:type="emof:Class" xmi:id="o390" name="AssociationEnd" superClass="o375"> - <ownedAttribute xmi:id="o391" name="association" type="o388" opposite="o389"/> - <ownedAttribute xmi:id="o392" name="participant" type="o380"/> - </ownedType> - <ownedType xmi:type="emof:Class" xmi:id="o393" name="Dependency" superClass="o375"> - <ownedAttribute xmi:id="o394" name="client" type="o375" opposite="o378"/> - <ownedAttribute xmi:id="o395" name="supplier" type="o375" opposite="o379"/> - </ownedType> - <xmi:Extension extender="http://www.eclipse.org/emf/2002/Ecore"> - <nsPrefix>uml</nsPrefix> - </xmi:Extension> -</emof:Package> diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/plugin.properties b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/plugin.properties deleted file mode 100644 index fedb80f28..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/plugin.properties +++ /dev/null @@ -1,3 +0,0 @@ -#Properties file for org.eclipse.m2m.qvt.oml.examples.omg -providerName = Eclipse Modeling Project -pluginName = QVT Operational specification examples
\ No newline at end of file diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/readme.txt b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/readme.txt deleted file mode 100644 index 7b29db37b..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/readme.txt +++ /dev/null @@ -1,38 +0,0 @@ -Deviations from OMG specification ---------------------------------- - -- Strings literals "" not supported, only OCL style '' is allowed - -- self.attribute->object(a) Column {…}" as a shorthand for "self. attribute->xcollect(a| object Column {…}) - is not supported - -- when guard in mapping operations should be a list of expressions (not a single one) - when {self.kind = 'persistent' /*;*/} - -- inlined meta-model definition not supported, ecore files with corresponding models provided - -- no implicit meta-model resolution by name - -- intermediate classes not supported, workaround by using Tuples for temporary - structural data - -- aliases for isKindOf(...) and other oclXXX related operation are not supported, - only OCL oclIsKindOf(...), etc. is allowed - -- the 'Encapsulation' example has been adjusted to uml2 meta-model from the Eclipse MDT project - -- merge, inherits do not support referencing of mapping operations by local name, - only qualified names are supported - -- composite assignments are not supported -> split to multiple assignments - constraint := { - self.constraint[isStereotypedBy("precondition")]->map createPrecondition(); - self.constraint[isStereotypedBy("goal")]->map createGoal(); - }; - -- resolve calls on collections using '->' are not supported, - supplier->resolveone(WorkDefinition) => supplier.resolveone(WorkDefinition) - -- assignments of collection to properties of * multiplicity are complemented by corresponding - asSet(), asOrderedSet() casting calls to avoid compilation errors while OMG spec allows this -
\ No newline at end of file diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Book2Publication.qvto b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Book2Publication.qvto deleted file mode 100644 index c87326809..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Book2Publication.qvto +++ /dev/null @@ -1,15 +0,0 @@ -modeltype BOOK "strict" uses BOOKS('http://org.eclipse.m2m.qvt.oml/examples/omg/BOOKS'); -modeltype PUB "strict" uses PUB('http://org.eclipse.m2m.qvt.oml/examples/omg/PUB'); - - -transformation Book2Publication(in bookModel:BOOK, out pubModel:PUB); - -main() { - -- bookModel->objectsOfType(Book)->map book_to_publication(); - bookModel.objects()[Book]->map book_to_publication(); -} - -mapping Book::book_to_publication () : Publication { - title := self.title; - nbPages := self.chapters->nbPages->sum(); -} diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Encapsulation.qvto b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Encapsulation.qvto deleted file mode 100644 index a270340f6..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Encapsulation.qvto +++ /dev/null @@ -1,59 +0,0 @@ --- Note: This example has been adjusted to uml2 metamodel from the Eclipse MDT project - --- This QVT definition performs an in place transformation on --- a UML class-diagram model by privatizing the attributes and --- creating accessor methods -modeltype UML uses uml('http://www.eclipse.org/uml2/2.1.0/UML'); - -transformation Encapsulation(inout classModel:UML); - --- Indicating that UML1.4 Name type is to be treated as a String -/* - Note : Not suppported, no predefined semantics in the spec - tag "TypeEquivalence" UML::Name = "String"; - */ --- entry point: selects the packages and applies the transformation --- on each package -main() { - classModel.objectsOfType(Package)->map encapsulateAttributesInPackageClasses(); -} --- Applies the transformation to each class of the package -mapping inout Package::encapsulateAttributesInPackageClasses () { - init { - self.ownedElement[Class]->map encapsulateAttributesInClass(); - } -} - --- Performs the encapsulation for each attribute of the class --- The initialization section is used to retrieve the list of attributes --- The population section is used to add the two accessor operations --- The end section is used to privatize each attribute -mapping inout Class::encapsulateAttributesInClass() { - init { - var attrs := self.feature[UML::Property]; - } - - ownedOperation += --{ -- assignment with additive semantics - attrs->xcollect(a | object Operation { - name := 'get_' + self.name.firstToUpper(); - visibility := VisibilityKind::public; - type := a.type; - }); - - ownedOperation += attrs->xcollect(a| object Operation { - name := 'set_' + self.name.firstToUpper(); - visibility := VisibilityKind::public; - ownedParameter += object Parameter { - name := 'a_'+ self.name.firstToUpper(); - direction := ParameterDirectionKind::_in; - type := a.type; - }; - }); - end { - attrs->map privatizeAttribute(); - } -} --- in place privatization of the attribute -mapping inout Property::privatizeAttribute () { - visibility := VisibilityKind::private; -}
\ No newline at end of file diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/SpemProfile2Metamodel.qvto b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/SpemProfile2Metamodel.qvto deleted file mode 100644 index 9facdbe94..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/SpemProfile2Metamodel.qvto +++ /dev/null @@ -1,130 +0,0 @@ -modeltype UML uses uml('http://www.eclipse.org/uml2/2.1.0/UML'); -modeltype SPEM uses spem('http://org.eclipse.m2m.qvt.oml/examples/omg/SPEM'); - -transformation SpemProfile2Metamodel(in umlmodel:UML,out spemmodel:SPEM); - -query UML::Element::isStereotypedBy(stereotypeName:String) : Boolean { - return false; -} -query UML::Classifier::getOppositeAends() : Set(UML::Property) { - return null; -} - -main () { - -- first pass: create all the SPEM elements from UML elements - umlmodel.rootObjects()[UML::Model]->map createDefaultPackage(); - -- second pass: add the dependencies beyween SPEM elements - umlmodel.objects()[UML::UseCase]->map addDependenciesInWorkDefinition(); -} - -mapping UML::Package::createDefaultPackage () : SPEM::Package { - name := self.name; - ownedElement := self.ownedElement->map createModelElement()->asSequence(); -} - -mapping UML::Package::createProcessComponent () : SPEM::ProcessComponent - inherits UML::Package::createDefaultPackage -when {self.isStereotypedBy('ProcessComponent')} -{} - -mapping UML::Package::createDiscipline () : SPEM::Discipline - inherits UML::Package::createDefaultPackage - when {self.isStereotypedBy('Discipline')} -{} - -mapping UML::/*Model*/Element::createModelElement () : SPEM::ModelElement -disjuncts - UML::Actor::createProcessRole, UML::UseCase::createWorkDefinition, - UML::Package::createProcessComponent, UML::Package::createDiscipline -{} - -mapping UML::UseCase::createWorkDefinition() : SPEM::WorkDefinition -disjuncts - UML::UseCase::createLifeCycle, UML::UseCase::createPhase, UML::UseCase::createIteration, - UML::UseCase::createActivity, UML::UseCase::createCompositeWorkDefinition -{} - -mapping UML::Actor::createProcessRole () : SPEM::ProcessRole -when {self.isStereotypedBy('ProcessRole')} -{} - --- rule to create the default process performer singleton -mapping createOrRetrieveDefaultPerformer () : SPEM::ProcessPerformer { - init { - result := resolveoneIn(createOrRetrieveDefaultPerformer, SPEM::ProcessPerformer); - -- In OMG spec : if result then return null endif; - -- -> not needed, it's a singleton by the execution semantics - } - name := 'ProcessPerformer'; -} - -abstract mapping UML::UseCase::createCommonWorkDefinition () : SPEM::WorkDefinition -{ - name := self.name; - -- QVTO : to be replaced by a composite assignment - --constraint += self.constraint[isStereotypedBy('precondition')]->map createPrecondition(); - --constraint += self.constraint[isStereotypedBy('goal')]->map createGoal(); - constraint += self.ownedRule[isStereotypedBy('precondition')]->map createPrecondition(); - constraint += self.ownedRule[isStereotypedBy('goal')]->map createGoal(); -} - -mapping UML::UseCase::createActivity () : SPEM::WorkDefinition - inherits UML::UseCase::createCommonWorkDefinition - when {self.isStereotypedBy('Activity')} -{} - -mapping UML::UseCase::createPhase () : SPEM::Phase - inherits UML::UseCase::createCommonWorkDefinition - when {self.isStereotypedBy('Phase')} -{} - -mapping UML::UseCase::createIteration () : SPEM::Iteration -inherits UML::UseCase::createCommonWorkDefinition -when {self.isStereotypedBy('Iteration')} -{} - -mapping UML::UseCase::createLifeCycle () : SPEM::Lifecycle - inherits UML::UseCase::createCommonWorkDefinition - when {self.isStereotypedBy('LifeCycle')} -{} - -mapping UML::UseCase::createCompositeWorkDefinition () : SPEM::WorkDefinition - inherits UML::UseCase::createCommonWorkDefinition - when {self.isStereotypedBy('WorkDefinition')} -{} - -mapping UML::Constraint::createPrecondition () : SPEM::Precondition { - body := self.specification![OpaqueExpression].body->asSequence()->first(); -} - -mapping UML::Constraint::createGoal () : SPEM::Goal { - body := self.specification![OpaqueExpression].body->asSequence()->first(); -} - -mapping UML::UseCase::addDependenciesInWorkDefinition () - : SPEM::WorkDefinition merges UML::UseCase::addDependenciesInActivity { - init { - result := self.resolveone(WorkDefinition); - var performers := self.getOppositeAends() - [/*i|i.*/association[isStereotypedBy('perform')]->notEmpty()]; - assert (not (performers->size()>1)) with log('A unique performer is allowed', self); - } - subWork += self.clientDependency[isStereotypedBy('includes')].supplier.resolveone(WorkDefinition); - performer := if performers->notEmpty() - then performers->asSequence()->first().getOtherEnd().resolveone(ProcessRole) - else map createOrRetrieveDefaultPerformer() endif; -} - -mapping UML::UseCase::addDependenciesInActivity () : SPEM::WorkDefinition - when {self.isStereotypedBy('Activity')} -{ - init { - var activity := result.oclAsType(SPEM::Activity); - if(not activity.oclIsUndefined()) then { - object activity : SPEM::Activity { - assistant := self.getOppositeAends()[/*i|i.*/association - [/*a|a.*/isStereotypedBy('assist')]->notEmpty()]/*->*/.resolve(ProcessRole); - } - } endif; - } -}
\ No newline at end of file diff --git a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Uml2Rdb.qvto b/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Uml2Rdb.qvto deleted file mode 100644 index bfee84722..000000000 --- a/plugins/org.eclipse.m2m.qvt.oml.samples/projects/org.eclipse.m2m.qvt.oml.examples.omg/transform/Uml2Rdb.qvto +++ /dev/null @@ -1,113 +0,0 @@ - -modeltype UML uses 'http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleUML'; -modeltype RDBMS uses 'http://org.eclipse.m2m.qvt.oml/examples/omg/SimpleRdbms'; - - -transformation Uml2Rdb(in srcModel:UML,out dest:RDBMS); - --- Aliases to avoid name conflicts with keywords - ---tag "alias" RDBMS::Table::_key = "key"; - - --- defining intermediate data to reference leaf attributes that may --- appear when struct data types are used -intermediate class LeafAttribute { - name:String; - kind:String; - attr:Attribute; -}; -intermediate property UML::Class::leafAttributes : Sequence(LeafAttribute); - --- defining specific helpers - -/* Note: simple query body not supported yet -query UML::Association::isPersistent() : Boolean = - (self.source.kind='persistent' and self.destination.kind='persistent'); -*/ - -query UML::Association::isPersistent() : Boolean { - return (self.source.kind='persistent' and self.destination.kind='persistent'); -} - - --- defining the default entry point for the module --- first the tables are created from classes, then the tables are --- updated with the foreign keys implied by the associations - -main() { - srcModel.objects()[Class]->map class2table(); -- first pass - srcModel.objects()[Association]->map asso2table(); -- second pass -} - --- maps a class to a table, with a column per flattened leaf attribute - -mapping Class::class2table () : Table - when {self.kind = 'persistent';} -{ - init { -- performs any needed intialization - self.leafAttributes := self.attribute->map attr2LeafAttrs("","")->flatten(); - } - -- population section for the table - name := 't_' + self.name; - column := self.leafAttributes->map leafAttr2OrdinaryColumn(""); - _key := object Key { -- nested population section for a 'Key' - name := 'k_'+ self.name; column := result.column[kind='primary']; - }; -} - --- Mapping that creates the intermediate leaf attributes data. - -mapping Attribute::attr2LeafAttrs(in prefix:String, in pkind:String) : Sequence(LeafAttribute) { - init { - var k := if pkind="" then self.kind else pkind endif; - - result := - /*if self.type.isKindOf(PrimitiveDataType)*/ - if self.type.oclIsKindOf(PrimitiveDataType) - then -- creates a sequence with a LeafAttribute instance - Sequence { - object LeafAttribute {attr:=self;name:=prefix+self.name;kind:=k;} - } - /*else self.type.asType(Class).attribute->map attr2LeafAttrs(self.name+"_",k)->flatten()*/ - else self.type.oclAsType(Class).attribute->map attr2LeafAttrs(self.name+"_",k)->flatten() - endif; - } -} - --- Mapping that creates an ordinary column from a leaf attribute - -mapping LeafAttribute::leafAttr2OrdinaryColumn (in prefix:String): Column { - name := prefix + self.name; - kind := self.kind; - type := if self.attr.type.name='int' then 'NUMBER' else 'VARCHAR' endif; -} - --- mapping to update a Table with new columns of foreign keys - -mapping Association::asso2table() : Table - when {self.isPersistent();} -{ - init {result := self.destination.resolveone(Table);} - foreignKey := self.map asso2ForeignKey(); - -- looks like bug in OMG sample - column /*:=*/ += result.foreignKey->column->flatten(); -} - --- mapping to build the foreign keys - -mapping Association::asso2ForeignKey() : ForeignKey { - name := 'f_' + self.name; - refersTo := self.source.resolveone(Table)._key; - column := self.source.leafAttributes[kind = 'primary'] - ->map leafAttr2ForeignColumn(self.source.name+'_'); -} - --- Mapping to create a Foreign key from a leaf attributes --- Inheriting of leafAttr2OrdinaryColumn has the effect to call the --- inherited rule before entering the property population section - -mapping LeafAttribute::leafAttr2ForeignColumn (in prefix:String) : Column - inherits LeafAttribute::leafAttr2OrdinaryColumn { - kind := "foreign"; -} |