diff --git a/org.framed.orm.transformation.test/src/org/framed/orm/transformation/test/model/test/testgeneration/ConfigGenerator.java b/org.framed.orm.transformation.test/src/org/framed/orm/transformation/test/model/test/testgeneration/ConfigGenerator.java index c99ef52c01aba1092b0a804b68b57fe50db8b9f7..a1c107de94cbb36109b9bdf7fedcd432db149371 100644 --- a/org.framed.orm.transformation.test/src/org/framed/orm/transformation/test/model/test/testgeneration/ConfigGenerator.java +++ b/org.framed.orm.transformation.test/src/org/framed/orm/transformation/test/model/test/testgeneration/ConfigGenerator.java @@ -46,6 +46,7 @@ import de.ovgu.featureide.fm.core.io.manager.FeatureModelManager; config[16] = Playable_By_Defining_Compartment<br> config[17] = Data_Types<br> config[18] = Data_Type_Inheritance + config[19] = Roles/ Contains_Compartments */ public class ConfigGenerator { /** @@ -169,64 +170,66 @@ public class ConfigGenerator { rCT = new ArrayList<String>();//rCT = requirementConfigTuple //set requirements and their relevant feature configuration - rCT.add("1******************"); //Requirement 1: role properties and operations are transformed - rCT.add("0******************"); //R2: role properties and operations are not transformed - rCT.add("*1*****************"); //R3: role inheritances are transformed - rCT.add("*0*****************"); //R4: role inheritances are not transformed - rCT.add("**1**********1*****"); //R5: fulfillments with compartment types as player are transformed - rCT.add("**0**********0*****"); //R6_1: fulfillments with compartment types as player are not transformed - rCT.add("**0**********1*****"); //R6_2 - rCT.add("***1**********1****"); //R7: fulfillments with data types as player are transformed - rCT.add("***0**********0****"); //R8_1: fulfillments with data types as player are not transformed - rCT.add("***0**********1****"); //R8_2 - rCT.add("****1*1************"); //R9: role implications are transformed - rCT.add("****0*0************"); //R10_1: role implications are not transformed - rCT.add("****0*1************"); //R10_2 - rCT.add("*****1*************"); //R11: role prohibitions are transformed - rCT.add("*****0*************"); //R12: role prohibitions are not transformed + rCT.add("1*******************"); //Requirement 1: role properties and operations are transformed + rCT.add("0*******************"); //R2: role properties and operations are not transformed + rCT.add("*1******************"); //R3: role inheritances are transformed + rCT.add("*0******************"); //R4: role inheritances are not transformed + rCT.add("**1**********1******"); //R5: fulfillments with compartment types as player are transformed + rCT.add("**0**********0******"); //R6_1: fulfillments with compartment types as player are not transformed + rCT.add("**0**********1******"); //R6_2 + rCT.add("***1**********1*****"); //R7: fulfillments with data types as player are transformed + rCT.add("***0**********0*****"); //R8_1: fulfillments with data types as player are not transformed + rCT.add("***0**********1*****"); //R8_2 + rCT.add("****1*1*************"); //R9: role implications are transformed + rCT.add("****0*0*************"); //R10_1: role implications are not transformed + rCT.add("****0*1*************"); //R10_2 + rCT.add("*****1**************"); //R11: role prohibitions are transformed + rCT.add("*****0**************"); //R12: role prohibitions are not transformed //R13_1: role equivalences are transformed = R9 //R13_2 = R10_2 //R14: role equivalences are not transformed = R10_1 - rCT.add("*******1***********"); //R15: group constraints are transformed - rCT.add("*******0***********"); //R16: group constraints are not transformed - rCT.add("********1**********"); //R17: occurrence constraints are transformed - rCT.add("********0**********"); //R18: occurrence constraints are not transformed - rCT.add("*********1000******"); //R19_1: relationships are transformed - rCT.add("*********1001******"); //R19_2 connected to its child - rCT.add("*********1010******"); //R19_3 features, every combination - rCT.add("*********1011******"); //R19_4 of child features used - rCT.add("*********1100******"); //R19_5 - rCT.add("*********1101******"); //R19_6 - rCT.add("*********1110******"); //R19_7 - rCT.add("*********1111******"); //R19_8 - rCT.add("*********0000******"); //R20: relationships are not transformed - rCT.add("*********11********"); //R21: relationship cardinalities are transformed - rCT.add("*********00********"); //R22_1: relationship cardinalities are not transformed - rCT.add("*********10********"); //R22_2 - rCT.add("*********1*1*******"); //R23: relationship cardinalities are transformed - rCT.add("*********0*0*******"); //R24_1: relationship cardinalities are not transformed - rCT.add("*********1*0*******"); //R24_2 - rCT.add("*********1**1******"); //R25: relationship cardinalities are transformed - rCT.add("*********0**0******"); //R26_1: relationship cardinalities are not transformed - rCT.add("*********1**0******"); //R26_2 - rCT.add("*************11****"); //R27: compartment type attributes and operations are transformed - rCT.add("*************00****"); //R28_1: compartment type attributes and operations are not transformed - rCT.add("*************10****"); //R28_2 - rCT.add("*************1*1***"); //R29: compartment inheritance are transformed - rCT.add("*************0*0***"); //R30_1: compartment inheritance are not transformed - rCT.add("*************1*0***"); //R30_2 - rCT.add("**1**********1**1**"); //R31: fulfillments of compartment to its self are transformed - rCT.add("**0**********0**0**"); //R32_1: fulfillments of compartment to its self are not transformed - rCT.add("**0**********1**0**"); //R32_2 - rCT.add("**1**********1**0**"); //R32_3 - rCT.add("*****************11"); //R33_1: data types are transformed - rCT.add("*****************10"); //R33_2 - rCT.add("*****************00"); //R34: data types are not transformed + rCT.add("*******1************"); //R15: group constraints are transformed + rCT.add("*******0************"); //R16: group constraints are not transformed + rCT.add("********1***********"); //R17: occurrence constraints are transformed + rCT.add("********0***********"); //R18: occurrence constraints are not transformed + rCT.add("*********1000*******"); //R19_1: relationships are transformed + rCT.add("*********1001*******"); //R19_2 connected to its child + rCT.add("*********1010*******"); //R19_3 features, every combination + rCT.add("*********1011*******"); //R19_4 of child features used + rCT.add("*********1100*******"); //R19_5 + rCT.add("*********1101*******"); //R19_6 + rCT.add("*********1110*******"); //R19_7 + rCT.add("*********1111*******"); //R19_8 + rCT.add("*********0000*******"); //R20: relationships are not transformed + rCT.add("*********11*********"); //R21: relationship cardinalities are transformed + rCT.add("*********00*********"); //R22_1: relationship cardinalities are not transformed + rCT.add("*********10*********"); //R22_2 + rCT.add("*********1*1********"); //R23: relationship cardinalities are transformed + rCT.add("*********0*0********"); //R24_1: relationship cardinalities are not transformed + rCT.add("*********1*0********"); //R24_2 + rCT.add("*********1**1*******"); //R25: relationship cardinalities are transformed + rCT.add("*********0**0*******"); //R26_1: relationship cardinalities are not transformed + rCT.add("*********1**0*******"); //R26_2 + rCT.add("*************11*****"); //R27: compartment type attributes and operations are transformed + rCT.add("*************00*****"); //R28_1: compartment type attributes and operations are not transformed + rCT.add("*************10*****"); //R28_2 + rCT.add("*************1*1****"); //R29: compartment inheritance are transformed + rCT.add("*************0*0****"); //R30_1: compartment inheritance are not transformed + rCT.add("*************1*0****"); //R30_2 + rCT.add("**1**********1**1***"); //R31: fulfillments of compartment to its self are transformed + rCT.add("**0**********0**0***"); //R32_1: fulfillments of compartment to its self are not transformed + rCT.add("**0**********1**0***"); //R32_2 + rCT.add("**1**********1**0***"); //R32_3 + rCT.add("*****************11*"); //R33_1: data types are transformed + rCT.add("*****************10*"); //R33_2 + rCT.add("*****************00*"); //R34: data types are not transformed //R35: data type inheritance are transformed = R33_1 //R36_1: data type inheritance are not transformed = R34 //R36_2 = R33_2 - rCT.add("0000000000000000000"); //R37_1: Corner case empty configuration - rCT.add("1111111111111111111"); //R37_2: Corner case full configuration + rCT.add("*******************1"); //R37_1 roles can play roles + rCT.add("*******************0"); //R37_2 roles can not play roles + rCT.add("00000000000000000000"); //R38_1: Corner case empty configuration + rCT.add("11111111111111111111"); //R38_2: Corner case full configuration return rCT; } diff --git a/org.framed.orm.transformation.test/src/org/framed/orm/transformation/test/model/test/testgeneration/TestGenerator.java b/org.framed.orm.transformation.test/src/org/framed/orm/transformation/test/model/test/testgeneration/TestGenerator.java index 47178136ef66f09a59b9d804a6307689dcbfba39..98a61433c979e95baa494acc303d337a04f026b6 100644 --- a/org.framed.orm.transformation.test/src/org/framed/orm/transformation/test/model/test/testgeneration/TestGenerator.java +++ b/org.framed.orm.transformation.test/src/org/framed/orm/transformation/test/model/test/testgeneration/TestGenerator.java @@ -44,7 +44,7 @@ public class TestGenerator { * @throws UnsupportedModelException */ public void generateTestCases() throws IOException, URISyntaxException, UnsupportedModelException { - /*List<BitSet> configList = new ArrayList<BitSet>(); + List<BitSet> configList = new ArrayList<BitSet>(); configGenerator = new ConfigGenerator(); Bundle bundle = Platform.getBundle("org.framed.orm.transformation.test"); URL fileURL = bundle.getEntry("testcases/Generated/baseTest.xmi"); @@ -68,7 +68,7 @@ public class TestGenerator { URI fileURI = URI.createFileURI("testcases/Generated/" + str_config + ".xmi"); createTestFile(testCase, fileURI); - }*/ + } } /** @@ -151,6 +151,9 @@ public class TestGenerator { featureList.remove(getFeatureNumber("Playable_by_Defining_Compartment", featureList));} if(!config.get(17)) featureList.remove(getFeatureNumber("Data_Types", featureList)); if(!config.get(18)) featureList.remove(getFeatureNumber("Data_Type_Inheritance", featureList)); + if(!config.get(19)) { + featureList.remove(getFeatureNumber("Roles", featureList)); + featureList.remove(getFeatureNumber("Contains_Compartments", featureList));} return testCase; } @@ -244,11 +247,14 @@ public class TestGenerator { //find all relationships, delete them for(crom_l1_composed.ModelElement element : cromElements) { if(element instanceof crom_l1_composed.CompartmentType) { - for(Relationship relationship : ((crom_l1_composed.CompartmentType) element).getRelationships()) + crom_l1_composed.CompartmentType compartmentType = (crom_l1_composed.CompartmentType) element; + for(Relationship relationship : (compartmentType.getRelationships())) RelationshipsToDelete.add(relationship); for(Relationship relation : RelationshipsToDelete) - ((crom_l1_composed.CompartmentType) element).getRelationships().remove(relation); - }}} + compartmentType.getRelationships().remove(relation); + for(crom_l1_composed.CompartmentType innerCT : compartmentType.getContains()) { + TraverseInCompartmentType(innerCT); + }}}} //Relationship_Cardinality if(!config.get(10)) { @@ -256,7 +262,7 @@ public class TestGenerator { for(crom_l1_composed.ModelElement element : cromElements) { if(element instanceof crom_l1_composed.CompartmentType) { for(Relationship relationship : ((crom_l1_composed.CompartmentType) element).getRelationships()) { - //get place, set place generic + //get place, set place generic relationship.getFirst().setLower(0); relationship.getFirst().setUpper(-1); relationship.getSecond().setLower(0); @@ -343,12 +349,12 @@ public class TestGenerator { if(part.getRole() instanceof crom_l1_composed.RoleGroup) { if(RoleGroupChildContainsRole((crom_l1_composed.RoleGroup) part.getRole(), filled)) RelationsToDelete.add(relation); - }}}}} - for(Relation relation : RelationsToDelete) - testCase.getCromModel().getRelations().remove(relation); - RelationsToDelete.clear(); + }}}}} + for(Relation relation : RelationsToDelete) + testCase.getCromModel().getRelations().remove(relation); + RelationsToDelete.clear(); } - + //Inheritances //------------ //Role_Inheritance @@ -406,8 +412,18 @@ public class TestGenerator { } for(crom_l1_composed.ModelElement element : ElementsToDelete) cromElements.remove(element); + ElementsToDelete.clear(); } + //compartment types in compartment types/ roles fulfill roles + if(!config.get(19)) { + for(crom_l1_composed.ModelElement element : cromElements) { + if(element instanceof crom_l1_composed.CompartmentType) { + crom_l1_composed.CompartmentType compartmentType = (crom_l1_composed.CompartmentType) element; + compartmentType.getContains().clear(); + compartmentType.getFulfillments().clear(); + } } } + return testCase; } @@ -416,7 +432,7 @@ public class TestGenerator { * @param constraintType * @param cromElements */ - public static void changeRoleConstraints(String constraintType, EList<crom_l1_composed.ModelElement> cromElements) { + public void changeRoleConstraints(String constraintType, EList<crom_l1_composed.ModelElement> cromElements) { EList<Constraint> constraints; ArrayList<Constraint> toDelete; @@ -443,7 +459,7 @@ public class TestGenerator { * Deletes attributes and operations of a given role * @param role */ - public static void DeleteAttributesAndOperationFromRole(crom_l1_composed.RoleType role) { + public void DeleteAttributesAndOperationFromRole(crom_l1_composed.RoleType role) { role.getAttributes().clear(); role.getOperations().clear(); } @@ -452,7 +468,7 @@ public class TestGenerator { * Traverses in a given Rolegroup: delete attributes and operations in role, call method recursive for other role groups * @param roleGroup */ - public static void TraverseInRoleGroups(crom_l1_composed.RoleGroup roleGroup) { + public void TraverseInRoleGroups(crom_l1_composed.RoleGroup roleGroup) { for(RoleGroupElement roleGroupElement : roleGroup.getElements()) { if(roleGroupElement instanceof crom_l1_composed.RoleType) DeleteAttributesAndOperationFromRole((crom_l1_composed.RoleType) roleGroupElement); @@ -465,7 +481,7 @@ public class TestGenerator { * Traverses in a given Group: delete data types, call method recursive for other groups * @param group */ - public static void TraverseInGroup(crom_l1_composed.Group group) { + public void TraverseInGroup(crom_l1_composed.Group group) { List<crom_l1_composed.ModelElement> ElementsToDelete = new ArrayList<crom_l1_composed.ModelElement>(); for(crom_l1_composed.ModelElement groupElement : group.getElements()) { if(groupElement instanceof crom_l1_composed.DataType) { @@ -479,6 +495,19 @@ public class TestGenerator { } } + /** + * Traverses in a given Compartment Type: deletes relationships and calls method recursive for other groups + */ + public void TraverseInCompartmentType(crom_l1_composed.CompartmentType compartmentType) { + List<Relationship> RelationshipsToDelete = new ArrayList<Relationship>(); + for(Relationship relationship : (compartmentType.getRelationships())) + RelationshipsToDelete.add(relationship); + for(Relationship relation : RelationshipsToDelete) + compartmentType.getRelationships().remove(relation); + for(crom_l1_composed.CompartmentType innerCT : compartmentType.getContains()) { + TraverseInCompartmentType(innerCT); + } } + /** * Checks if a played role is part of a role group of the playing compartment type itself * @param roleGroup diff --git a/org.framed.orm.transformation.test/testcases/Generated/baseTest.xmi b/org.framed.orm.transformation.test/testcases/Generated/baseTest.xmi new file mode 100644 index 0000000000000000000000000000000000000000..e565efa4fafe609e10198e51203551d7c962f341 --- /dev/null +++ b/org.framed.orm.transformation.test/testcases/Generated/baseTest.xmi @@ -0,0 +1,285 @@ +<?xml version="1.0" encoding="ASCII"?> +<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" + xmlns:org.framed.iorm.model="http://iorm/1.0" xmlns:ts="http://org.framed/testmodel"> + <title>Base test case for generation of feature dependent tests</title> + <description> + This test is the basic test case which is used to generate other test dependent on the feature model. + It verifies as much as possible model elements. + </description> + <framedModel> + <elements xsi:type="org.framed.iorm.model:Shape" name="naturalType3" outgoingRelations="//@framedModel/@elements.5" type="NaturalType"> + <firstSegment/> + <secondSegment> + <elements name="operation(a:dataType1):dataType"/> + </secondSegment> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="dataType" incomingRelations="//@framedModel/@elements.3" type="DataType"> + <firstSegment> + <elements name="attribute:dataType1"/> + </firstSegment> + <secondSegment/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="dataType1" outgoingRelations="//@framedModel/@elements.3 //@framedModel/@elements.6" type="DataType"> + <firstSegment/> + <secondSegment> + <elements name="operation():naturalType"/> + </secondSegment> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" type="Inheritance" target="//@framedModel/@elements.1" source="//@framedModel/@elements.2"/> + <elements xsi:type="org.framed.iorm.model:Shape" name="compartmentType" incomingRelations="//@framedModel/@elements.5 //@framedModel/@elements.6"> + <firstSegment> + <elements name="attribute:naturalType"/> + </firstSegment> + <secondSegment/> + <model> + <elements xsi:type="org.framed.iorm.model:Shape" name="roleType" incomingRelations="//@framedModel/@elements.4/@model/@elements.6 //@framedModel/@elements.4/@model/@elements.8 //@framedModel/@elements.4/@model/@elements.16" outgoingRelations="//@framedModel/@elements.4/@model/@elements.4 //@framedModel/@elements.4/@model/@elements.12 //@framedModel/@elements.4/@model/@elements.17" type="RoleType"> + <firstSegment/> + <secondSegment/> + <description name="0..1"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="roleType1" outgoingRelations="//@framedModel/@elements.4/@model/@elements.5 //@framedModel/@elements.4/@model/@elements.6 //@framedModel/@elements.4/@model/@elements.8 //@framedModel/@elements.4/@model/@elements.9 //@framedModel/@elements.4/@model/@elements.13 //@framedModel/@elements.4/@model/@elements.16 //@framedModel/@elements.4/@model/@elements.20" type="RoleType"> + <firstSegment> + <elements name="attribute:naturalType"/> + </firstSegment> + <secondSegment/> + <description name="*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="roleType2" incomingRelations="//@framedModel/@elements.4/@model/@elements.4 //@framedModel/@elements.4/@model/@elements.7 //@framedModel/@elements.4/@model/@elements.10 //@framedModel/@elements.4/@model/@elements.11 //@framedModel/@elements.4/@model/@elements.12 //@framedModel/@elements.4/@model/@elements.17 //@framedModel/@elements.4/@model/@elements.18" type="RoleType"> + <firstSegment/> + <secondSegment/> + <description name="*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="roleType3" incomingRelations="//@framedModel/@elements.4/@model/@elements.5 //@framedModel/@elements.4/@model/@elements.9 //@framedModel/@elements.4/@model/@elements.13" outgoingRelations="//@framedModel/@elements.4/@model/@elements.7 //@framedModel/@elements.4/@model/@elements.10 //@framedModel/@elements.4/@model/@elements.11 //@framedModel/@elements.4/@model/@elements.18" type="RoleType"> + <firstSegment/> + <secondSegment> + <elements name="operation():dataType1"/> + </secondSegment> + <description name="*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" name="rst" incomingRelations="//@framedModel/@elements.4/@model/@elements.15" type="Relationship" target="//@framedModel/@elements.4/@model/@elements.2" source="//@framedModel/@elements.4/@model/@elements.0" referencedRelation="//@framedModel/@elements.4/@model/@elements.12"> + <sourceLabel name="1..*"/> + <targetLabel name="*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" name="rst1" outgoingRelations="//@framedModel/@elements.4/@model/@elements.15" type="Relationship" target="//@framedModel/@elements.4/@model/@elements.3" source="//@framedModel/@elements.4/@model/@elements.1" referencedRelation="//@framedModel/@elements.4/@model/@elements.9"> + <sourceLabel name="*"/> + <targetLabel name="1..*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" name="rst2" incomingRelations="//@framedModel/@elements.4/@model/@elements.14" type="Relationship" target="//@framedModel/@elements.4/@model/@elements.0" source="//@framedModel/@elements.4/@model/@elements.1" referencedRelation="//@framedModel/@elements.4/@model/@elements.8"> + <sourceLabel name="*"/> + <targetLabel name="*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" name="rst3" outgoingRelations="//@framedModel/@elements.4/@model/@elements.14" type="Relationship" target="//@framedModel/@elements.4/@model/@elements.2" source="//@framedModel/@elements.4/@model/@elements.3" referencedRelation="//@framedModel/@elements.4/@model/@elements.10 //@framedModel/@elements.4/@model/@elements.11"> + <sourceLabel name="*"/> + <targetLabel name="*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" type="Acyclic" target="//@framedModel/@elements.4/@model/@elements.0" source="//@framedModel/@elements.4/@model/@elements.1"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="Cyclic" target="//@framedModel/@elements.4/@model/@elements.3" source="//@framedModel/@elements.4/@model/@elements.1"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="Irreflexive" target="//@framedModel/@elements.4/@model/@elements.2" source="//@framedModel/@elements.4/@model/@elements.3"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="Total" target="//@framedModel/@elements.4/@model/@elements.2" source="//@framedModel/@elements.4/@model/@elements.3"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="Reflexive" target="//@framedModel/@elements.4/@model/@elements.2" source="//@framedModel/@elements.4/@model/@elements.0"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="RoleProhibition" target="//@framedModel/@elements.4/@model/@elements.3" source="//@framedModel/@elements.4/@model/@elements.1"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="RelationshipImplication" target="//@framedModel/@elements.4/@model/@elements.6" source="//@framedModel/@elements.4/@model/@elements.7"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="RelationshipExclusion" target="//@framedModel/@elements.4/@model/@elements.4" source="//@framedModel/@elements.4/@model/@elements.5"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="RoleImplication" target="//@framedModel/@elements.4/@model/@elements.0" source="//@framedModel/@elements.4/@model/@elements.1"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="RoleEquivalence" target="//@framedModel/@elements.4/@model/@elements.2" source="//@framedModel/@elements.4/@model/@elements.0"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="Inheritance" target="//@framedModel/@elements.4/@model/@elements.2" source="//@framedModel/@elements.4/@model/@elements.3"/> + <elements xsi:type="org.framed.iorm.model:Shape" name="compartmentType1" incomingRelations="//@framedModel/@elements.4/@model/@elements.20"> + <firstSegment/> + <secondSegment/> + <model> + <elements xsi:type="org.framed.iorm.model:Shape" name="roleType" outgoingRelations="//@framedModel/@elements.4/@model/@elements.19/@model/@elements.2" type="RoleType"> + <firstSegment/> + <secondSegment/> + <description name="*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="roleType1" incomingRelations="//@framedModel/@elements.4/@model/@elements.19/@model/@elements.2" type="RoleType"> + <firstSegment/> + <secondSegment/> + <description name="*"/> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" name="rst" type="Relationship" target="//@framedModel/@elements.4/@model/@elements.19/@model/@elements.1" source="//@framedModel/@elements.4/@model/@elements.19/@model/@elements.0"> + <sourceLabel name="*"/> + <targetLabel name="*"/> + </elements> + </model> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.4/@model/@elements.19" source="//@framedModel/@elements.4/@model/@elements.1" referencedRoles="//@framedModel/@elements.4/@model/@elements.19/@model/@elements.0"/> + </model> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.4" source="//@framedModel/@elements.0" referencedRoles="//@framedModel/@elements.4/@model/@elements.1 //@framedModel/@elements.4/@model/@elements.2"/> + <elements xsi:type="org.framed.iorm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.4" source="//@framedModel/@elements.2" referencedRoles="//@framedModel/@elements.4/@model/@elements.0"/> + <elements xsi:type="org.framed.iorm.model:Shape" name="group" type="Group"> + <model> + <elements xsi:type="org.framed.iorm.model:Shape" name="naturalType1" outgoingRelations="//@framedModel/@elements.7/@model/@elements.4" type="NaturalType"> + <firstSegment> + <elements name="attribute:dataType2"/> + </firstSegment> + <secondSegment/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="dataType2" type="DataType"> + <firstSegment/> + <secondSegment/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="naturalType2" incomingRelations="//@framedModel/@elements.7/@model/@elements.4" type="NaturalType"> + <firstSegment/> + <secondSegment/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="group1" type="Group"> + <model> + <elements xsi:type="org.framed.iorm.model:Shape" name="naturalType" outgoingRelations="//@framedModel/@elements.7/@model/@elements.3/@model/@elements.2" type="NaturalType"> + <firstSegment/> + <secondSegment/> + </elements> + <elements xsi:type="org.framed.iorm.model:Shape" name="compartmentType2" incomingRelations="//@framedModel/@elements.7/@model/@elements.3/@model/@elements.2"> + <firstSegment/> + <secondSegment/> + <model> + <elements xsi:type="org.framed.iorm.model:Shape" name="roleType" type="RoleType"> + <firstSegment/> + <secondSegment/> + <description name="*"/> + </elements> + </model> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.7/@model/@elements.3/@model/@elements.1" source="//@framedModel/@elements.7/@model/@elements.3/@model/@elements.0" referencedRoles="//@framedModel/@elements.7/@model/@elements.3/@model/@elements.1/@model/@elements.0"/> + </model> + </elements> + <elements xsi:type="org.framed.iorm.model:Relation" type="Inheritance" target="//@framedModel/@elements.7/@model/@elements.2" source="//@framedModel/@elements.7/@model/@elements.0"/> + </model> + </elements> + <framedConfiguration> + <features/> + <features name="Role_Types"/> + <features name="Role_Structure"/> + <features name="Role_Properties"/> + <features name="Role_Behavior"/> + <features name="Role_Inheritance"/> + <features name="Playable"/> + <features name="Players"/> + <features name="Naturals"/> + <features name="Roles"/> + <features name="Compartments"/> + <features name="Dates"/> + <features name="Dependent"/> + <features name="On_Compartments"/> + <features name="On_Relationships"/> + <features name="Role_Constraints"/> + <features name="Role_Implication"/> + <features name="Role_Prohibition"/> + <features name="Role_Equivalence"/> + <features name="Group_Constraints"/> + <features name="Occurrence_Constraints"/> + <features name="Relationships"/> + <features name="Relationship_Constraints"/> + <features name="Relationship_Cardinality"/> + <features name="Intra_Relationship_Constraints"/> + <features name="Parthood_Constraints"/> + <features name="Inter_Relationship_Constraints"/> + <features name="Compartment_Types"/> + <features name="Compartment_Structure"/> + <features name="Compartment_Properties"/> + <features name="Compartment_Behavior"/> + <features name="Compartment_Inheritance"/> + <features name="Participants"/> + <features name="Contains_Compartments"/> + <features name="Playable_by_Defining_Compartment"/> + <features name="Data_Types"/> + <features name="Data_Type_Inheritance"/> + </framedConfiguration> + </framedModel> + <cromModel> + <elements xsi:type="crom_l1_composed:NaturalType" name="naturalType3"> + <operations name="operation" type="//@cromModel/@elements.1"> + <params name="a" type="//@cromModel/@elements.2"/> + </operations> + </elements> + <elements xsi:type="crom_l1_composed:DataType" name="dataType" incoming="//@cromModel/@relations.1"> + <attributes name="attribute" type="//@cromModel/@elements.2"/> + </elements> + <elements xsi:type="crom_l1_composed:DataType" name="dataType1" outgoing="//@cromModel/@relations.1"> + <operations name="operation" type="//@cromModel/@elements.4/@elements.3/@elements.0"/> + </elements> + <elements xsi:type="crom_l1_composed:CompartmentType" name="compartmentType"> + <attributes name="attribute" type="//@cromModel/@elements.4/@elements.3/@elements.0"/> + <parts upper="1"> + <role xsi:type="crom_l1_composed:RoleType" name="roleType" incoming="//@cromModel/@elements.3/@relationships.2" outgoing="//@cromModel/@elements.3/@relationships.0"/> + </parts> + <parts> + <role xsi:type="crom_l1_composed:RoleType" name="roleType1" outgoing="//@cromModel/@elements.3/@relationships.1 //@cromModel/@elements.3/@relationships.2"> + <attributes name="attribute" type="//@cromModel/@elements.4/@elements.3/@elements.0"/> + </role> + </parts> + <parts> + <role xsi:type="crom_l1_composed:RoleType" name="roleType2" incoming="//@cromModel/@elements.3/@relationships.0 //@cromModel/@elements.3/@relationships.3 //@cromModel/@relations.0"/> + </parts> + <parts> + <role xsi:type="crom_l1_composed:RoleType" name="roleType3" incoming="//@cromModel/@elements.3/@relationships.1" outgoing="//@cromModel/@elements.3/@relationships.3 //@cromModel/@relations.0"> + <operations name="operation" type="//@cromModel/@elements.2"/> + </role> + </parts> + <relationships name="rst"> + <first lower="1" holder="//@cromModel/@elements.3/@parts.0/@role"/> + <second holder="//@cromModel/@elements.3/@parts.2/@role"/> + </relationships> + <relationships name="rst1"> + <first holder="//@cromModel/@elements.3/@parts.1/@role"/> + <second lower="1" holder="//@cromModel/@elements.3/@parts.3/@role"/> + </relationships> + <relationships name="rst2"> + <first holder="//@cromModel/@elements.3/@parts.1/@role"/> + <second holder="//@cromModel/@elements.3/@parts.0/@role"/> + </relationships> + <relationships name="rst3"> + <first holder="//@cromModel/@elements.3/@parts.3/@role"/> + <second holder="//@cromModel/@elements.3/@parts.2/@role"/> + </relationships> + <constraints xsi:type="crom_l1_composed:Acyclic" relation="//@cromModel/@elements.3/@relationships.2"/> + <constraints xsi:type="crom_l1_composed:Cyclic" relation="//@cromModel/@elements.3/@relationships.1"/> + <constraints xsi:type="crom_l1_composed:Irreflexive" relation="//@cromModel/@elements.3/@relationships.3"/> + <constraints xsi:type="crom_l1_composed:Total" relation="//@cromModel/@elements.3/@relationships.3"/> + <constraints xsi:type="crom_l1_composed:Reflexive" relation="//@cromModel/@elements.3/@relationships.0"/> + <constraints xsi:type="crom_l1_composed:RoleProhibition" first="//@cromModel/@elements.3/@parts.1/@role" second="//@cromModel/@elements.3/@parts.3/@role"/> + <constraints xsi:type="crom_l1_composed:RelationshipImplication" first="//@cromModel/@elements.3/@relationships.3" second="//@cromModel/@elements.3/@relationships.2"/> + <constraints xsi:type="crom_l1_composed:RelationshipExclusion" first="//@cromModel/@elements.3/@relationships.1" second="//@cromModel/@elements.3/@relationships.0"/> + <constraints xsi:type="crom_l1_composed:RoleImplication" first="//@cromModel/@elements.3/@parts.1/@role" second="//@cromModel/@elements.3/@parts.0/@role"/> + <constraints xsi:type="crom_l1_composed:RoleEquivalence" first="//@cromModel/@elements.3/@parts.0/@role" second="//@cromModel/@elements.3/@parts.2/@role"/> + <contains name="compartmentType1"> + <parts> + <role xsi:type="crom_l1_composed:RoleType" name="roleType" outgoing="//@cromModel/@elements.3/@contains.0/@relationships.0"/> + </parts> + <parts> + <role xsi:type="crom_l1_composed:RoleType" name="roleType1" incoming="//@cromModel/@elements.3/@contains.0/@relationships.0"/> + </parts> + <relationships name="rst"> + <first holder="//@cromModel/@elements.3/@contains.0/@parts.0/@role"/> + <second holder="//@cromModel/@elements.3/@contains.0/@parts.1/@role"/> + </relationships> + </contains> + <fulfillments filled="//@cromModel/@elements.3/@contains.0/@parts.0/@role" filler="//@cromModel/@elements.3/@parts.1/@role"/> + </elements> + <elements xsi:type="crom_l1_composed:Group" name="group"> + <elements xsi:type="crom_l1_composed:NaturalType" name="naturalType1" outgoing="//@cromModel/@elements.4/@relations.0"> + <attributes name="attribute" type="//@cromModel/@elements.4/@elements.1"/> + </elements> + <elements xsi:type="crom_l1_composed:DataType" name="dataType2"/> + <elements xsi:type="crom_l1_composed:NaturalType" name="naturalType2" incoming="//@cromModel/@elements.4/@relations.0"/> + <elements xsi:type="crom_l1_composed:Group" name="group1"> + <elements xsi:type="crom_l1_composed:NaturalType" name="naturalType"/> + <elements xsi:type="crom_l1_composed:CompartmentType" name="compartmentType2"> + <parts> + <role xsi:type="crom_l1_composed:RoleType" name="roleType"/> + </parts> + </elements> + <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.4/@elements.3/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.4/@elements.3/@elements.0"/> + </elements> + <relations xsi:type="crom_l1_composed:NaturalInheritance" super="//@cromModel/@elements.4/@elements.2" sub="//@cromModel/@elements.4/@elements.0"/> + </elements> + <relations xsi:type="crom_l1_composed:RoleInheritance" super="//@cromModel/@elements.3/@parts.2/@role" sub="//@cromModel/@elements.3/@parts.3/@role"/> + <relations xsi:type="crom_l1_composed:DataInheritance" super="//@cromModel/@elements.1" sub="//@cromModel/@elements.2"/> + <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.3/@parts.1/@role" filler="//@cromModel/@elements.0"/> + <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.3/@parts.2/@role" filler="//@cromModel/@elements.0"/> + <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.3/@parts.0/@role" filler="//@cromModel/@elements.2"/> + </cromModel> +</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_1.xmi b/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_1.xmi deleted file mode 100644 index 32d6dd9d61c18b62fc73ebaa5a934c2c86c75872..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_1.xmi +++ /dev/null @@ -1,64 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel"> - <title> - Simple TestCase for CompartmentTypes - </title> - <description> - This test verifies that Shapes of type CompartmentType are - converted to CompartmentTypes and still have the same name - </description> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="CompType1" - type="CompartmentType"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CompType2" - type="CompartmentType" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CompType1"> - </elements> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CompType2" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_2.xmi b/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_2.xmi deleted file mode 100644 index 4ab8162607020240d32fecb06b182c6282244b5c..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_2.xmi +++ /dev/null @@ -1,76 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel"> - <title> - Simple TestCase for CompartmentTypes - </title> - <description> - This test verifies that Shapes of type CompartmentType are - converted to CompartmentTypes and still have the same name and their attributes - </description> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="CompType1" - type="CompartmentType"> - <firstSegment> - <elements name="NamedElement0 : CompType2" /> - <elements name="NamedElement1 : CompType2" /> - <elements name="NamedElement2 : CompType2" /> - <elements name="NamedElement3 : CompType2" /> - <elements name="NamedElement4 : CompType2" /> - </firstSegment> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CompType2" - type="NaturalType" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CompType1"> - <attributes name="NamedElement0" type="//@cromModel/@elements.1" /> - <attributes name="NamedElement1" type="//@cromModel/@elements.1"/> - <attributes name="NamedElement2" type="//@cromModel/@elements.1"/> - <attributes name="NamedElement3" type="//@cromModel/@elements.1"/> - <attributes name="NamedElement4" type="//@cromModel/@elements.1"/> - </elements> - <elements xsi:type="crom_l1_composed:NaturalType" name="CompType2" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_3.xmi b/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_3.xmi deleted file mode 100644 index a5ca786384edff57570b4cb324b902f4d16b5eed..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_3.xmi +++ /dev/null @@ -1,69 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel"> - <title> - Test for CompartmentType with a child model containing one RoleType. - </title> - <description> - This test verifies that Shapes of type CompartmentType are converted correctly, and - that referenced child elements are inserted in the CROM model as expected. - </description> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" type="CompartmentType" name="Bank"> - <model> - <elements xsi:type="org.framed.orm.model:Shape" type="RoleType" name="Consultant"> - <description name="1..*"/> - </elements> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="Bank"> - <parts lower="1"> - <role xsi:type="crom_l1_composed:RoleType" name="Consultant"> - </role> - </parts> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_4.xmi b/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_4.xmi deleted file mode 100644 index f67f79ce346f682f606a02168f670ac078442ece..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_4.xmi +++ /dev/null @@ -1,88 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel"> - <title> - Test for CompartmentType with two children of type RoleType, which are in relation. - </title> - <description> - This test verifies that Shapes of type CompartmentType are converted correctly, and - that referenced child elements are inserted in the CROM model as expected. Additionally, relationships - between child elements are tested. - </description> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" type="CompartmentType" name="Bank"> - <model> - <elements xsi:type="org.framed.orm.model:Shape" type="RoleType" name="Consultant" - outgoingRelations="//@framedModel/@elements.0/@model/@elements.2"> - <description name="1..*"/> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" type="RoleType" name="Customer" - incomingRelations="//@framedModel/@elements.0/@model/@elements.2"> - <description name="0..*"/> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="testRelation" type="Relationship" - source="//@framedModel/@elements.0/@model/@elements.0" - target="//@framedModel/@elements.0/@model/@elements.1"/> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="Bank"> - <parts lower="1"> - <role xsi:type="crom_l1_composed:RoleType" name="Consultant" - outgoing="//@cromModel/@elements.0/@relationships.0"> - </role> - </parts> - <parts lower="0"> - <role xsi:type="crom_l1_composed:RoleType" name="Customer" - incoming="//@cromModel/@elements.0/@relationships.0"> - </role> - </parts> - <relationships name="testRelation"> - <first lower="0" holder="//@cromModel/@elements.0/@parts.0/@role"/> - <second lower="0" holder="//@cromModel/@elements.0/@parts.1/@role"/> - </relationships> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_5.xmi b/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_5.xmi deleted file mode 100644 index 70a90afc4b7b90b712325e003a79ee031bfda68b..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/CompartmentType/compartmentType_test_5.xmi +++ /dev/null @@ -1,78 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel"> - <title> - Test for CompartmentType with a RoleGroup. - </title> - <description> - This test verifies that Shapes of type CompartmentType are converted correctly, and - that a RoleGroup is correctly transformed as child element. - </description> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" type="CompartmentType" name="Bank"> - <model> - <elements xsi:type="org.framed.orm.model:Shape" type="RoleGroup" name="RoleGroup1"> - <model> - <elements xsi:type="org.framed.orm.model:Shape" type="RoleType" name="Consultant"> - <description name="1..*"/> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" type="RoleType" name="Customer"> - <description name="0..*"/> - </elements> - </model> - </elements> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="Bank"> - <parts> - <role xsi:type="crom_l1_composed:RoleGroup" name="RoleGroup1"> - <elements xsi:type="crom_l1_composed:RoleType" name="Consultant"/> - <elements xsi:type="crom_l1_composed:RoleType" name="Customer"/> - </role> - </parts> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Fulfillment/fulfillment_test_1.xmi b/org.framed.orm.transformation.test/testcases1/Fulfillment/fulfillment_test_1.xmi deleted file mode 100644 index 8c3eaf52c6c076f37d510d8991705116fc094d30..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Fulfillment/fulfillment_test_1.xmi +++ /dev/null @@ -1,93 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for Fulfillments" - description="Simple TestCase for Fulfillments"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType1" - outgoingRelations="//@framedModel/@elements.1" - type="NaturalType"/> - <elements - xsi:type="org.framed.orm.model:Relation" - name="testFulfillment" - type="Fulfillment" - target="//@framedModel/@elements.2" - source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.2/@model/@elements.0"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="compType1" - incomingRelations="//@framedModel/@elements.1"> - <model> - <elements - xsi:type="org.framed.orm.model:Shape" - name="roleType1" - type="RoleType"/> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType1"/> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="compType1"> - <parts> - <role - xsi:type="crom_l1_composed:RoleType" - name="roleType1"/> - </parts> - </elements> - <relations - xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" - filler="//@cromModel/@elements.0"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Generated/baseTest.xmi b/org.framed.orm.transformation.test/testcases1/Generated/baseTest.xmi deleted file mode 100644 index e3d26e3bbc868386ef62dc5e0e56cb1a34e57a57..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Generated/baseTest.xmi +++ /dev/null @@ -1,557 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel"> - <title>Base test case for generation of feature dependant tests</title> - <description> - This test is the basic test case which is used to generate other test dependant on the feature model. - It verifies as much as possible model elements. - </description> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="CompartmentA" incomingRelations="//@framedModel/@elements.10 //@framedModel/@elements.11 //@framedModel/@elements.12 //@framedModel/@elements.13" outgoingRelations="//@framedModel/@elements.12"> - <firstSegment> - <elements name="AttributeCompartmentA : String"/> - </firstSegment> - <secondSegment> - <elements name="OperationCompartmentA(input : Boolean)"/> - </secondSegment> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleF" outgoingRelations="//@framedModel/@elements.0/@model/@elements.3" type="RoleType"> - <firstSegment/> - <secondSegment> - <elements name="OperationRoleE(input : Integer) : String"/> - </secondSegment> - <description name="1..*"/> - <boundaries> - <topLeft x="824" y="345"/> - <bottomRight x="1061" y="500"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleE" incomingRelations="//@framedModel/@elements.0/@model/@elements.3" type="RoleType"> - <firstSegment> - <elements name="AttributeRoleE : Integer"/> - </firstSegment> - <secondSegment> - <elements name="OperationRoleE(input : Integer) : String"/> - </secondSegment> - <description name="0..1"/> - <boundaries> - <topLeft x="824" y="71"/> - <bottomRight x="1059" y="224"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleGroupA (1..*)" type="RoleGroup"> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleG" incomingRelations="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.3" outgoingRelations="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.4" type="RoleType"> - <firstSegment/> - <secondSegment/> - <description name="*"/> - <boundaries> - <topLeft x="38" y="22"/> - <bottomRight x="241" y="175"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleH" outgoingRelations="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.3 //@framedModel/@elements.0/@model/@elements.2/@model/@elements.7" type="RoleType"> - <firstSegment/> - <secondSegment/> - <description name="*"/> - <boundaries> - <topLeft x="437" y="22"/> - <bottomRight x="641" y="176"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleJ" incomingRelations="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.4 //@framedModel/@elements.0/@model/@elements.2/@model/@elements.9" type="RoleType"> - <firstSegment/> - <secondSegment/> - <description name="*"/> - <boundaries> - <topLeft x="37" y="237"/> - <bottomRight x="244" y="394"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="RoleImplication" target="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.0" source="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.1"/> - <elements xsi:type="org.framed.orm.model:Relation" type="RoleProhibition" target="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.2" source="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.0"/> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleK" incomingRelations="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.7" outgoingRelations="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.9" type="RoleType"> - <firstSegment/> - <secondSegment/> - <description name="*"/> - <boundaries> - <topLeft x="435" y="238"/> - <bottomRight x="644" y="397"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="RelF" type="Relationship" target="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.5" source="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.1" connectionAnchor="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.6"> - <sourceLabel name="0..1"/> - <targetLabel name="1..*"/> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="RoleEquivalence" target="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.2" source="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.5"/> - </model> - <description name="1..1"/> - <boundaries> - <topLeft x="59" y="68"/> - <bottomRight x="752" y="518"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Inheritance" target="//@framedModel/@elements.0/@model/@elements.1" source="//@framedModel/@elements.0/@model/@elements.0"/> - </model> - <boundaries> - <topLeft x="848" y="158"/> - <bottomRight x="1102" y="312"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="SubDataA" outgoingRelations="//@framedModel/@elements.6" type="DataType"> - <firstSegment/> - <secondSegment> - <elements name="validateData() : Boolean"/> - </secondSegment> - <boundaries> - <topLeft x="88" y="86"/> - <bottomRight x="289" y="237"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="DataA" incomingRelations="//@framedModel/@elements.6" outgoingRelations="//@framedModel/@elements.10" type="DataType"> - <firstSegment> - <elements name="Data1 : String"/> - <elements name="Data2 : Integer"/> - </firstSegment> - <secondSegment> - <elements name="validateData() : Boolean"/> - </secondSegment> - <boundaries> - <topLeft x="426" y="84"/> - <bottomRight x="629" y="237"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="SubNaturalA" outgoingRelations="//@framedModel/@elements.5" type="NaturalType"> - <firstSegment> - <elements name="AttributeSubNatA : String"/> - </firstSegment> - <secondSegment/> - <boundaries> - <topLeft x="86" y="261"/> - <bottomRight x="288" y="413"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="NaturalA" incomingRelations="//@framedModel/@elements.5" outgoingRelations="//@framedModel/@elements.9 //@framedModel/@elements.11 //@framedModel/@elements.16" type="NaturalType"> - <firstSegment> - <elements name="AttributeNatA : String"/> - </firstSegment> - <secondSegment> - <elements name="OperationNatA()"/> - </secondSegment> - <boundaries> - <topLeft x="425" y="264"/> - <bottomRight x="625" y="414"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Inheritance" target="//@framedModel/@elements.4" source="//@framedModel/@elements.3"/> - <elements xsi:type="org.framed.orm.model:Relation" type="Inheritance" target="//@framedModel/@elements.2" source="//@framedModel/@elements.1"/> - <elements xsi:type="org.framed.orm.model:Shape" name="GroupA" type="Group"> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="NaturalB" type="NaturalType"> - <firstSegment> - <elements name="AttributeNatB : String"/> - </firstSegment> - <secondSegment> - <elements name="OperationNatB() : Integer"/> - </secondSegment> - <boundaries> - <topLeft x="215" y="184"/> - <bottomRight x="415" y="334"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="DataB" type="DataType"> - <firstSegment> - <elements name="value : Float"/> - </firstSegment> - <secondSegment/> - <boundaries> - <topLeft x="548" y="183"/> - <bottomRight x="750" y="335"/> - </boundaries> - </elements> - </model> - <boundaries> - <topLeft x="90" y="441"/> - <bottomRight x="290" y="591"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CompartmentB" incomingRelations="//@framedModel/@elements.9 //@framedModel/@elements.15" outgoingRelations="//@framedModel/@elements.13"> - <firstSegment/> - <secondSegment/> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleA" outgoingRelations="//@framedModel/@elements.8/@model/@elements.5 //@framedModel/@elements.8/@model/@elements.11 //@framedModel/@elements.8/@model/@elements.14 //@framedModel/@elements.8/@model/@elements.16 //@framedModel/@elements.8/@model/@elements.19 //@framedModel/@elements.8/@model/@elements.20" type="RoleType"> - <firstSegment> - <elements name="AttributeRoleA : Boolean"/> - </firstSegment> - <secondSegment/> - <description name="0..1"/> - <boundaries> - <topLeft x="234" y="116"/> - <bottomRight x="437" y="269"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleB" incomingRelations="//@framedModel/@elements.8/@model/@elements.5 //@framedModel/@elements.8/@model/@elements.16" outgoingRelations="//@framedModel/@elements.8/@model/@elements.7 //@framedModel/@elements.8/@model/@elements.17" type="RoleType"> - <firstSegment> - <elements name="AttributeRoleB : String"/> - </firstSegment> - <secondSegment> - <elements name="OperationRoleB()"/> - </secondSegment> - <description name="1..1"/> - <boundaries> - <topLeft x="639" y="116"/> - <bottomRight x="845" y="272"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleC" incomingRelations="//@framedModel/@elements.8/@model/@elements.9 //@framedModel/@elements.8/@model/@elements.11 //@framedModel/@elements.8/@model/@elements.18 //@framedModel/@elements.8/@model/@elements.20" type="RoleType"> - <firstSegment/> - <secondSegment/> - <description name="1..*"/> - <boundaries> - <topLeft x="234" y="374"/> - <bottomRight x="436" y="526"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RoleD" incomingRelations="//@framedModel/@elements.8/@model/@elements.7 //@framedModel/@elements.8/@model/@elements.14 //@framedModel/@elements.8/@model/@elements.17 //@framedModel/@elements.8/@model/@elements.19" outgoingRelations="//@framedModel/@elements.8/@model/@elements.9 //@framedModel/@elements.8/@model/@elements.18" type="RoleType"> - <firstSegment> - <elements name="AttributeRoleD : Integer"/> - </firstSegment> - <secondSegment/> - <description name="*"/> - <boundaries> - <topLeft x="642" y="374"/> - <bottomRight x="845" y="527"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" outgoingRelations="//@framedModel/@elements.8/@model/@elements.21" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="RelA" type="Relationship" target="//@framedModel/@elements.8/@model/@elements.1" source="//@framedModel/@elements.8/@model/@elements.0" referencedRelation="//@framedModel/@elements.8/@model/@elements.16" connectionAnchor="//@framedModel/@elements.8/@model/@elements.4"> - <sourceLabel name="1..1"/> - <targetLabel name="*"/> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="RelB" type="Relationship" target="//@framedModel/@elements.8/@model/@elements.3" source="//@framedModel/@elements.8/@model/@elements.1" referencedRelation="//@framedModel/@elements.8/@model/@elements.17" connectionAnchor="//@framedModel/@elements.8/@model/@elements.6"> - <sourceLabel name="0..1"/> - <targetLabel name="1..*"/> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" incomingRelations="//@framedModel/@elements.8/@model/@elements.22" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="RelC" type="Relationship" target="//@framedModel/@elements.8/@model/@elements.2" source="//@framedModel/@elements.8/@model/@elements.3" referencedRelation="//@framedModel/@elements.8/@model/@elements.18" connectionAnchor="//@framedModel/@elements.8/@model/@elements.8"> - <sourceLabel name="1..*"/> - <targetLabel name="1..1"/> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" outgoingRelations="//@framedModel/@elements.8/@model/@elements.22" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="RelD" type="Relationship" target="//@framedModel/@elements.8/@model/@elements.2" source="//@framedModel/@elements.8/@model/@elements.0" referencedRelation="//@framedModel/@elements.8/@model/@elements.20" connectionAnchor="//@framedModel/@elements.8/@model/@elements.10"> - <sourceLabel name="*"/> - <targetLabel name="*"/> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" incomingRelations="//@framedModel/@elements.8/@model/@elements.21" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="RelE" type="Relationship" target="//@framedModel/@elements.8/@model/@elements.3" source="//@framedModel/@elements.8/@model/@elements.0" referencedRelation="//@framedModel/@elements.8/@model/@elements.19" connectionAnchor="//@framedModel/@elements.8/@model/@elements.13"> - <sourceLabel name="*"/> - <targetLabel name="*"/> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" type="RelationshipShapeChild"> - <boundaries> - <topLeft y="1"/> - <bottomRight x="1"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Reflexive" type="Reflexive" target="//@framedModel/@elements.8/@model/@elements.1" source="//@framedModel/@elements.8/@model/@elements.0" referencedRelation="//@framedModel/@elements.8/@model/@elements.5"> - <bendpoints> - <referencePoints x="438" y="193"/> - <referencePoints x="639" y="194"/> - <distances x="-121" y="1"/> - <distances/> - </bendpoints> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" type="Irreflexive" target="//@framedModel/@elements.8/@model/@elements.3" source="//@framedModel/@elements.8/@model/@elements.1" referencedRelation="//@framedModel/@elements.8/@model/@elements.7"> - <bendpoints> - <referencePoints x="742" y="273"/> - <referencePoints x="744" y="374"/> - <distances x="-21" y="51"/> - <distances/> - </bendpoints> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Total" type="Total" target="//@framedModel/@elements.8/@model/@elements.2" source="//@framedModel/@elements.8/@model/@elements.3" referencedRelation="//@framedModel/@elements.8/@model/@elements.9"> - <bendpoints> - <referencePoints x="642" y="451"/> - <referencePoints x="437" y="450"/> - <distances x="-122"/> - <distances/> - </bendpoints> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Cyclic" type="Cyclic" target="//@framedModel/@elements.8/@model/@elements.3" source="//@framedModel/@elements.8/@model/@elements.0" referencedRelation="//@framedModel/@elements.8/@model/@elements.14"> - <bendpoints> - <referencePoints x="336" y="270"/> - <referencePoints x="744" y="374"/> - <distances x="-224" y="52"/> - <distances/> - </bendpoints> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Acyclic" type="Acyclic" target="//@framedModel/@elements.8/@model/@elements.2" source="//@framedModel/@elements.8/@model/@elements.0" referencedRelation="//@framedModel/@elements.8/@model/@elements.11"> - <bendpoints> - <referencePoints x="336" y="270"/> - <referencePoints x="335" y="374"/> - <distances x="-20" y="52"/> - <distances/> - </bendpoints> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="RelationshipImplication" target="//@framedModel/@elements.8/@model/@elements.13" source="//@framedModel/@elements.8/@model/@elements.4"/> - <elements xsi:type="org.framed.orm.model:Relation" type="RelationshipExclusion" target="//@framedModel/@elements.8/@model/@elements.8" source="//@framedModel/@elements.8/@model/@elements.10"/> - </model> - <boundaries> - <topLeft x="850" y="363"/> - <bottomRight x="1052" y="515"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.8" source="//@framedModel/@elements.4" referencedRoles="//@framedModel/@elements.8/@model/@elements.0 //@framedModel/@elements.8/@model/@elements.1 //@framedModel/@elements.8/@model/@elements.2 //@framedModel/@elements.8/@model/@elements.3"/> - <elements xsi:type="org.framed.orm.model:Relation" name="" type="Fulfillment" target="//@framedModel/@elements.0" source="//@framedModel/@elements.2" referencedRoles="//@framedModel/@elements.0/@model/@elements.1 //@framedModel/@elements.0/@model/@elements.0"/> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.0" source="//@framedModel/@elements.4" referencedRoles="//@framedModel/@elements.0/@model/@elements.2"/> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.0" source="//@framedModel/@elements.0" referencedRoles="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.5"> - <bendpoints> - <referencePoints x="848" y="158"/> - <referencePoints x="848" y="158"/> - <distances y="183"/> - <distances/> - </bendpoints> - <bendpoints> - <referencePoints x="848" y="158"/> - <referencePoints x="848" y="158"/> - <distances x="166" y="92"/> - <distances x="166" y="92"/> - </bendpoints> - <bendpoints> - <referencePoints x="848" y="158"/> - <referencePoints x="848" y="158"/> - <distances x="164" y="2"/> - <distances x="164" y="2"/> - </bendpoints> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.0" source="//@framedModel/@elements.8" referencedRoles="//@framedModel/@elements.0/@model/@elements.2/@model/@elements.1"/> - <elements xsi:type="org.framed.orm.model:Shape" name="CompartmentC" incomingRelations="//@framedModel/@elements.16" outgoingRelations="//@framedModel/@elements.15"> - <firstSegment/> - <secondSegment> - <elements name="OperationCompartmentC(input : Boolean)"/> - </secondSegment> - <model/> - <boundaries> - <topLeft x="410" y="434"/> - <bottomRight x="656" y="589"/> - </boundaries> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Inheritance" target="//@framedModel/@elements.8" source="//@framedModel/@elements.14"/> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" target="//@framedModel/@elements.14" source="//@framedModel/@elements.4" referencedRoles="//@framedModel/@elements.8/@model/@elements.0 //@framedModel/@elements.8/@model/@elements.1 //@framedModel/@elements.8/@model/@elements.2 //@framedModel/@elements.8/@model/@elements.3"/> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CompartmentA"> - <attributes name="AttributeCompartmentA"/> - <operations name="OperationCompartmentA"> - <params name="input"/> - </operations> - <parts lower="1"> - <role xsi:type="crom_l1_composed:RoleType" name="RoleF" outgoing="//@cromModel/@relations.0"> - <operations name="OperationRoleE"> - <params name="input"/> - </operations> - </role> - </parts> - <parts upper="1"> - <role xsi:type="crom_l1_composed:RoleType" name="RoleE" incoming="//@cromModel/@relations.0"> - <attributes name="AttributeRoleE"/> - <operations name="OperationRoleE"> - <params name="input"/> - </operations> - </role> - </parts> - <parts lower="1" upper="1"> - <role xsi:type="crom_l1_composed:RoleGroup" name="RoleGroupA" lower="1"> - <elements xsi:type="crom_l1_composed:RoleType" name="RoleG"/> - <elements xsi:type="crom_l1_composed:RoleType" name="RoleH" outgoing="//@cromModel/@elements.0/@relationships.0"/> - <elements xsi:type="crom_l1_composed:RoleType" name="RoleJ"/> - <elements xsi:type="crom_l1_composed:RoleType" name="RoleK" incoming="//@cromModel/@elements.0/@relationships.0"/> - </role> - </parts> - <relationships name="RelF"> - <first upper="1" holder="//@cromModel/@elements.0/@parts.2/@role/@elements.1"/> - <second lower="1" holder="//@cromModel/@elements.0/@parts.2/@role/@elements.3"/> - </relationships> - <constraints xsi:type="crom_l1_composed:RoleImplication" first="//@cromModel/@elements.0/@parts.2/@role/@elements.1" second="//@cromModel/@elements.0/@parts.2/@role/@elements.0"/> - <constraints xsi:type="crom_l1_composed:RoleProhibition" first="//@cromModel/@elements.0/@parts.2/@role/@elements.0" second="//@cromModel/@elements.0/@parts.2/@role/@elements.2"/> - <constraints xsi:type="crom_l1_composed:RoleEquivalence" first="//@cromModel/@elements.0/@parts.2/@role/@elements.3" second="//@cromModel/@elements.0/@parts.2/@role/@elements.2"/> - </elements> - <elements xsi:type="crom_l1_composed:DataType" name="SubDataA" outgoing="//@cromModel/@relations.2"> - <operations name="validateData"/> - </elements> - <elements xsi:type="crom_l1_composed:DataType" name="DataA" incoming="//@cromModel/@relations.2"> - <attributes name="Data1"/> - <attributes name="Data2"/> - <operations name="validateData"/> - </elements> - <elements xsi:type="crom_l1_composed:NaturalType" name="SubNaturalA" outgoing="//@cromModel/@relations.1"> - <attributes name="AttributeSubNatA"/> - </elements> - <elements xsi:type="crom_l1_composed:NaturalType" name="NaturalA" incoming="//@cromModel/@relations.1"> - <attributes name="AttributeNatA"/> - <operations name="OperationNatA"/> - </elements> - <elements xsi:type="crom_l1_composed:Group" name="GroupA"> - <elements xsi:type="crom_l1_composed:NaturalType" name="NaturalB"> - <attributes name="AttributeNatB"/> - <operations name="OperationNatB"/> - </elements> - <elements xsi:type="crom_l1_composed:DataType" name="DataB"> - <attributes name="value"/> - </elements> - </elements> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CompartmentB" incoming="//@cromModel/@relations.12"> - <parts upper="1"> - <role xsi:type="crom_l1_composed:RoleType" name="RoleA" outgoing="//@cromModel/@elements.6/@relationships.0 //@cromModel/@elements.6/@relationships.3 //@cromModel/@elements.6/@relationships.4"> - <attributes name="AttributeRoleA"/> - </role> - </parts> - <parts lower="1" upper="1"> - <role xsi:type="crom_l1_composed:RoleType" name="RoleB" incoming="//@cromModel/@elements.6/@relationships.0" outgoing="//@cromModel/@elements.6/@relationships.1"> - <attributes name="AttributeRoleB"/> - <operations name="OperationRoleB"/> - </role> - </parts> - <parts lower="1"> - <role xsi:type="crom_l1_composed:RoleType" name="RoleC" incoming="//@cromModel/@elements.6/@relationships.2 //@cromModel/@elements.6/@relationships.3"/> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RoleD" incoming="//@cromModel/@elements.6/@relationships.1 //@cromModel/@elements.6/@relationships.4" outgoing="//@cromModel/@elements.6/@relationships.2"> - <attributes name="AttributeRoleD"/> - </role> - </parts> - <relationships name="RelA"> - <first lower="1" upper="1" holder="//@cromModel/@elements.6/@parts.0/@role"/> - <second holder="//@cromModel/@elements.6/@parts.1/@role"/> - </relationships> - <relationships name="RelB"> - <first upper="1" holder="//@cromModel/@elements.6/@parts.1/@role"/> - <second lower="1" holder="//@cromModel/@elements.6/@parts.3/@role"/> - </relationships> - <relationships name="RelC"> - <first lower="1" holder="//@cromModel/@elements.6/@parts.3/@role"/> - <second lower="1" upper="1" holder="//@cromModel/@elements.6/@parts.2/@role"/> - </relationships> - <relationships name="RelD"> - <first holder="//@cromModel/@elements.6/@parts.0/@role"/> - <second holder="//@cromModel/@elements.6/@parts.2/@role"/> - </relationships> - <relationships name="RelE"> - <first holder="//@cromModel/@elements.6/@parts.0/@role"/> - <second holder="//@cromModel/@elements.6/@parts.3/@role"/> - </relationships> - <constraints xsi:type="crom_l1_composed:Reflexive" relation="//@cromModel/@elements.6/@relationships.0"/> - <constraints xsi:type="crom_l1_composed:Irreflexive" relation="//@cromModel/@elements.6/@relationships.1"/> - <constraints xsi:type="crom_l1_composed:Total" relation="//@cromModel/@elements.6/@relationships.2"/> - <constraints xsi:type="crom_l1_composed:Cyclic" relation="//@cromModel/@elements.6/@relationships.4"/> - <constraints xsi:type="crom_l1_composed:Acyclic" relation="//@cromModel/@elements.6/@relationships.3"/> - <constraints xsi:type="crom_l1_composed:RelationshipImplication" first="//@cromModel/@elements.6/@relationships.0" second="//@cromModel/@elements.6/@relationships.4"/> - <constraints xsi:type="crom_l1_composed:RelationshipExclusion" first="//@cromModel/@elements.6/@relationships.3" second="//@cromModel/@elements.6/@relationships.2"/> - </elements> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CompartmentC" outgoing="//@cromModel/@relations.12"> - <operations name="OperationCompartmentC"> - <params name="input"/> - </operations> - </elements> - <relations xsi:type="crom_l1_composed:RoleInheritance" super="//@cromModel/@elements.0/@parts.1/@role" sub="//@cromModel/@elements.0/@parts.0/@role"/> - <relations xsi:type="crom_l1_composed:NaturalInheritance" super="//@cromModel/@elements.4" sub="//@cromModel/@elements.3"/> - <relations xsi:type="crom_l1_composed:DataInheritance" super="//@cromModel/@elements.2" sub="//@cromModel/@elements.1"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.6/@parts.0/@role" filler="//@cromModel/@elements.4"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.6/@parts.1/@role" filler="//@cromModel/@elements.4"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.6/@parts.2/@role" filler="//@cromModel/@elements.4"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.6/@parts.3/@role" filler="//@cromModel/@elements.4"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.0/@parts.1/@role" filler="//@cromModel/@elements.2"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.0/@parts.0/@role" filler="//@cromModel/@elements.2"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.0/@parts.2/@role" filler="//@cromModel/@elements.4"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.0/@parts.2/@role/@elements.3" filler="//@cromModel/@elements.0"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.0/@parts.2/@role/@elements.1" filler="//@cromModel/@elements.6"/> - <relations xsi:type="crom_l1_composed:CompartmentInheritance" super="//@cromModel/@elements.6" sub="//@cromModel/@elements.7"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.6/@parts.0/@role" filler="//@cromModel/@elements.4"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.6/@parts.1/@role" filler="//@cromModel/@elements.4"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.6/@parts.2/@role" filler="//@cromModel/@elements.4"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@cromModel/@elements.6/@parts.3/@role" filler="//@cromModel/@elements.4"/> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/Group/group_test_1.xmi b/org.framed.orm.transformation.test/testcases1/Group/group_test_1.xmi deleted file mode 100644 index aab731429e96d08335c2253a72b875106e033ba7..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Group/group_test_1.xmi +++ /dev/null @@ -1,66 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel"> - <title> - Test for a simple Group shape with one contained NaturalType. - </title> - <description> - This test verifies that Groups and contained elements are transformed correctly. - </description> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="GroupTest" type="Group"> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="NaturalType1" type="NaturalType"> - <firstSegment/> - <secondSegment/> - </elements> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:Group" name="GroupTest"> - <elements xsi:type="crom_l1_composed:NaturalType" name="NaturalType1"/> - </elements> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_1.xmi b/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_1.xmi deleted file mode 100644 index 90a1425db55a4e10ffa4c09692270d06732ccda9..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_1.xmi +++ /dev/null @@ -1,79 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for Inheritance Relation" - description="Simple TestCase for Inheritance Relation"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="CompType1" - outgoingRelations="//@framedModel/@elements.2"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="CompType2" - incomingRelations="//@framedModel/@elements.2"/> - <elements - xsi:type="org.framed.orm.model:Relation" - type="Inheritance" - target="//@framedModel/@elements.1" - source="//@framedModel/@elements.0"/> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="CompType1" - outgoing="//@cromModel/@relations.0"/> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="CompType2" - incoming="//@cromModel/@relations.0"/> - <relations - xsi:type="crom_l1_composed:CompartmentInheritance" - super="//@cromModel/@elements.1" - sub="//@cromModel/@elements.0"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_2.xmi b/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_2.xmi deleted file mode 100644 index 1dcac113ed399037291274dbb54420b9e4160477..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_2.xmi +++ /dev/null @@ -1,98 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for Inheritance from inherited element" - description="TestCase to test inheritance over inheritance ;)"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="CompType1" - outgoingRelations="//@framedModel/@elements.2"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="CompType2" - incomingRelations="//@framedModel/@elements.2" - outgoingRelations="//@framedModel/@elements.4"/> - <elements - xsi:type="org.framed.orm.model:Relation" - type="Inheritance" - target="//@framedModel/@elements.1" - source="//@framedModel/@elements.0"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="CompType3" - incomingRelations="//@framedModel/@elements.4"/> - <elements - xsi:type="org.framed.orm.model:Relation" - type="Inheritance" - target="//@framedModel/@elements.3" - source="//@framedModel/@elements.1"/> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="CompType1" - outgoing="//@cromModel/@relations.0"/> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="CompType2" - incoming="//@cromModel/@relations.0" - outgoing="//@cromModel/@relations.1"/> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="CompType3" - incoming="//@cromModel/@relations.1"/> - <relations - xsi:type="crom_l1_composed:CompartmentInheritance" - super="//@cromModel/@elements.1" - sub="//@cromModel/@elements.0"/> - <relations - xsi:type="crom_l1_composed:CompartmentInheritance" - super="//@cromModel/@elements.2" - sub="//@cromModel/@elements.1"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_3.xmi b/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_3.xmi deleted file mode 100644 index 5e9b7e3ede69319e930a88e3b3644cdabf8504a0..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Inheritance/inheritance_test_3.xmi +++ /dev/null @@ -1,96 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase to test double inheritance" - description="TestCase to test double inheritance"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="CompType1" - outgoingRelations="//@framedModel/@elements.2 //@framedModel/@elements.4"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="CompType2" - incomingRelations="//@framedModel/@elements.2"/> - <elements - xsi:type="org.framed.orm.model:Relation" - type="Inheritance" - target="//@framedModel/@elements.1" - source="//@framedModel/@elements.0"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="CompType3" - incomingRelations="//@framedModel/@elements.4"/> - <elements - xsi:type="org.framed.orm.model:Relation" - type="Inheritance" - target="//@framedModel/@elements.3" - source="//@framedModel/@elements.0"/> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="CompType1" - outgoing="//@cromModel/@relations.0 //@cromModel/@relations.1"/> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="CompType2" - incoming="//@cromModel/@relations.0"/> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="CompType3" - incoming="//@cromModel/@relations.1"/> - <relations - xsi:type="crom_l1_composed:CompartmentInheritance" - super="//@cromModel/@elements.1" - sub="//@cromModel/@elements.0"/> - <relations - xsi:type="crom_l1_composed:CompartmentInheritance" - super="//@cromModel/@elements.2" - sub="//@cromModel/@elements.0"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_1.xmi b/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_1.xmi deleted file mode 100644 index eaf7e41b5979f54e3632e1df5b0722bc5b9c1d67..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_1.xmi +++ /dev/null @@ -1,68 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="
		Simple TestCase for Natural Types
	" - description="
		This test verifies that Shapes of type NaturalType are
		converted to NaturalTypes and still have the same name
	"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType1" - type="NaturalType"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType2" - type="NaturalType"/> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType1"/> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType2"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_2.xmi b/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_2.xmi deleted file mode 100644 index ebf4904915b769d82392e1c4aa07c97e72577660..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_2.xmi +++ /dev/null @@ -1,80 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="
		Simple TestCase for Natural Types with attributes
	" - description="
		This test verifies that Shapes of type NaturalType are
		converted to NaturalTypes with their attributes which are contained in
		the first segment of a shape.
	"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType1" - type="NaturalType"> - <firstSegment> - <elements - name="NamedElement0 : NaturalType1"/> - <elements - name="NamedElement1 : NaturalType2"/> - </firstSegment> - </elements> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType2" - type="NaturalType"/> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType1"> - <attributes - name="NamedElement0" type="//@cromModel/@elements.0"/> - <attributes - name="NamedElement1" type="//@cromModel/@elements.1"/> - </elements> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType2"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_3.xmi b/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_3.xmi deleted file mode 100644 index e48e7a3e92ccee8d7dc64264b640b40072aaae8f..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_3.xmi +++ /dev/null @@ -1,72 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel"> - <title> - Test to ensure operations can be transformed. - </title> - <description> - This test checks if two operations without parameters can be converted. - </description> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NaturalType1" - type="NaturalType"> - <firstSegment /> - <secondSegment> - <elements name="operation1() : NaturalType2" /> - <elements name="operation2() : NaturalType1" /> - </secondSegment> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="NaturalType2" - type="NaturalType" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NaturalType1"> - <operations name="operation1" type="//@cromModel/@elements.1" - operation="" /> - <operations name="operation2" type="//@cromModel/@elements.0" - operation="" /> - </elements> - <elements xsi:type="crom_l1_composed:NaturalType" name="NaturalType2" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_4.xmi b/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_4.xmi deleted file mode 100644 index 2b5acc2fa95a5bd87dd3017af17ec8e2368c7f39..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_4.xmi +++ /dev/null @@ -1,96 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="
		Test to ensure operations can be transformed basically
	" - description="
		This test checks if two operations with parameters can be converted.
	"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType1" - type="NaturalType"> - <firstSegment/> - <secondSegment> - <elements - name="operation1(para1 : NaturalType1) : NaturalType2"/> - <elements - name="operation2(para1 : NaturalType1, para2:NaturalType2) : NaturalType1"/> - </secondSegment> - </elements> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType2" - type="NaturalType"/> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType1"> - <operations - name="operation1" - type="//@cromModel/@elements.1" - operation=""> - <params - name="para1" - type="//@cromModel/@elements.0"/> - </operations> - <operations - name="operation2" - type="//@cromModel/@elements.0" - operation=""> - <params - name="para1" - type="//@cromModel/@elements.0"/> - <params - name="para2" - type="//@cromModel/@elements.1"/> - </operations> - </elements> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType2"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_5.xmi b/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_5.xmi deleted file mode 100644 index 5735016214a13649c004ee6b898be2d95c6b9a94..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/NaturalType/naturalType_test_5.xmi +++ /dev/null @@ -1,96 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="
		Test to ensure operations can be transformed basically
	" - description="
		This test checks if two operations with parameters with some crazy syntax can be converted.
	"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType1" - type="NaturalType"> - <firstSegment/> - <secondSegment> - <elements - name="operation1(para1:NaturalType1): NaturalType2"/> - <elements - name="operation2(para1 : NaturalType1, para2:NaturalType2) :NaturalType1"/> - </secondSegment> - </elements> - <elements - xsi:type="org.framed.orm.model:Shape" - name="NaturalType2" - type="NaturalType"/> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType1"> - <operations - name="operation1" - type="//@cromModel/@elements.1" - operation=""> - <params - name="para1" - type="//@cromModel/@elements.0"/> - </operations> - <operations - name="operation2" - type="//@cromModel/@elements.0" - operation=""> - <params - name="para1" - type="//@cromModel/@elements.0"/> - <params - name="para2" - type="//@cromModel/@elements.1"/> - </operations> - </elements> - <elements - xsi:type="crom_l1_composed:NaturalType" - name="NaturalType2"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_1.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_1.xmi deleted file mode 100644 index 431fe7fad0986897ba40171f73d33fe4b6b97c2e..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_1.xmi +++ /dev/null @@ -1,98 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for Relationships" - description="Simple TestCase for Relationships"> -<framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="CT"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.0/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.0/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.0/@model/@elements.0" - source="//@framedModel/@elements.0/@model/@elements.1" - connectionAnchor="//@framedModel/@elements.0/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.0/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.0/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.0/@parts.1/@role" /> - <second holder="//@cromModel/@elements.0/@parts.0/@role" /> - </relationships> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_10.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_10.xmi deleted file mode 100644 index 5cc4cd52c100db0b5e546300a9aa77db45c1bf40..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_10.xmi +++ /dev/null @@ -1,112 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for 1 relationship(s)" - description="TestCase for 1 relationship(s) between two RoleType(s)"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_11.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_11.xmi deleted file mode 100644 index 09118677f68bfec7f0e318be35a0ffe280aed628..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_11.xmi +++ /dev/null @@ -1,132 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for 2 relationship(s)" - description="TestCase for 2 relationship(s) between two RoleType(s)"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.6" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.6" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.1" - source="//@framedModel/@elements.1/@model/@elements.0" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="1" /> - <targetLabel name="1..*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="subrst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.5"> - <sourceLabel name="*" /> - <targetLabel name="0..1" /> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.1" outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - incoming="//@cromModel/@elements.1/@relationships.0" outgoing="//@cromModel/@elements.1/@relationships.1" /> - </parts> - <relationships name="rst"> - <first lower="1" upper="1" - holder="//@cromModel/@elements.1/@parts.0/@role" /> - <second lower="1" holder="//@cromModel/@elements.1/@parts.1/@role" /> - </relationships> - <relationships name="subrst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second upper="1" holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_2.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_2.xmi deleted file mode 100644 index 3b7b541a3143d13cb08491b9f5d9a3f3c2822352..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_2.xmi +++ /dev/null @@ -1,116 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel" - title="TestCase for cyclic relationships" - description="TestCase for cyclic relationships where one RoleType is referenced by a cyclic relationship to another RoleType"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.4" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Cyclic" - type="Cyclic" target="//@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Cyclic" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_3.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_3.xmi deleted file mode 100644 index 639f0b22ace99500dcfa1add13ec5d6455f9902e..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_3.xmi +++ /dev/null @@ -1,116 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel" - title="TestCase for irreflexive relationships" - description="TestCase for irreflexive relationships where one RoleType is referenced by a irreflexive relationship to another RoleType"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.4" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" - type="Irreflexive" target="//@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_4.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_4.xmi deleted file mode 100644 index a5fa5f42c130c09054cfd0335fcd08daeed999a5..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_4.xmi +++ /dev/null @@ -1,130 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel" - title="TestCase for cyclic,irreflexive relationships" - description="TestCase for cyclic,irreflexive relationships where one RoleType is referenced by a cyclic,irreflexive relationship to another RoleType"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" - type="Irreflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Cyclic" - type="Cyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Cyclic" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_5.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_5.xmi deleted file mode 100644 index e82085add43ce78fae2f38a04c55a6077590cdd0..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_5.xmi +++ /dev/null @@ -1,119 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for acyclic relationships" - description="TestCase for Acyclic relationships where one RoleType is referenced by an Acyclic relationship to another RoleType"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.4" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Acyclic" - type="Acyclic" target="//@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Acyclic" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_6.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_6.xmi deleted file mode 100644 index 76d3b5107b1ca2361ac0d5e3e69c6cb990c9015c..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_6.xmi +++ /dev/null @@ -1,119 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for reflexive relationships" - description="TestCase for Reflexive relationships where one RoleType is referenced by a Reflexive relationship to another RoleType"> -<framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.4" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Reflexive" - type="Reflexive" target="//@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Reflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_7.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_7.xmi deleted file mode 100644 index e898314974d4323ea4397a92ea64997b91a70fda..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_7.xmi +++ /dev/null @@ -1,133 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for cyclic, reflexive relationships" - description="TestCase for cyclic, reflexive relationships where one RoleType is referenced by a cyclic, reflexive relationship to another RoleType"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Reflexive" - type="Reflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Cyclic" - type="Cyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Reflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Cyclic" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_8.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_8.xmi deleted file mode 100644 index 7b1e5ca237e67fc2898d3dbfbc88e9dcd4dbf612..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_8.xmi +++ /dev/null @@ -1,133 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for acyclic, irreflexive relationships" - description="TestCase for acyclic, irreflexive relationships where one RoleType is referenced by a acyclic, irreflexive relationship to another RoleType"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" - type="Irreflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Acyclic" - type="Acyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Acyclic" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_9.xmi b/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_9.xmi deleted file mode 100644 index cf273f3b81aeb83be3fbdc29fb4b7f6e3b1839be..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/Relationship/relationship_test_9.xmi +++ /dev/null @@ -1,133 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for cyclic,total relationships" - description="TestCase for cyclic,total relationships where one RoleType is referenced by a cyclic,total relationship to another RoleType"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" - type="Irreflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Total" - type="Total" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Total" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_1.xmi b/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_1.xmi deleted file mode 100644 index 5d1eba153949f1eff410009778c8d89d9fd215b4..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_1.xmi +++ /dev/null @@ -1,98 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for Relationship Cardinality (1)" - description="TestCase for Relationship Cardinality (1) (2)"> -<framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="CT"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.0/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.0/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.0/@model/@elements.0" - source="//@framedModel/@elements.0/@model/@elements.1" - connectionAnchor="//@framedModel/@elements.0/@model/@elements.2"> - <sourceLabel name="1" /> - <targetLabel name="2" /> - </elements> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.0/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.0/@relationships.0" /> - </parts> - <relationships name="rst"> - <first lower="1" upper="1" holder="//@cromModel/@elements.0/@parts.1/@role" /> - <second lower="2" upper="2" holder="//@cromModel/@elements.0/@parts.0/@role" /> - </relationships> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_2.xmi b/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_2.xmi deleted file mode 100644 index d67a3b248258cb498766aad42feb9c85a1bd153f..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_2.xmi +++ /dev/null @@ -1,98 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for Relationship Cardinality (1..2)" - description="TestCase for Relationship Cardinality (1..2) (2..3)"> -<framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="CT"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.0/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.0/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.0/@model/@elements.0" - source="//@framedModel/@elements.0/@model/@elements.1" - connectionAnchor="//@framedModel/@elements.0/@model/@elements.2"> - <sourceLabel name="1..2" /> - <targetLabel name="3..4" /> - </elements> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.0/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.0/@relationships.0" /> - </parts> - <relationships name="rst"> - <first lower="1" upper="2" holder="//@cromModel/@elements.0/@parts.1/@role" /> - <second lower="3" upper="4" holder="//@cromModel/@elements.0/@parts.0/@role" /> - </relationships> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_3.xmi b/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_3.xmi deleted file mode 100644 index 02ef1a48fcabbab33c4aa3b5de3a559d7582e6a3..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RelationshipCardinality/relationshipcardinality_test_3.xmi +++ /dev/null @@ -1,98 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="TestCase for Relationship Cardinality (1..*)" - description="TestCase for Relationship Cardinality (1..*) (2..*)"> -<framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="CT"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.0/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.0/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.0/@model/@elements.0" - source="//@framedModel/@elements.0/@model/@elements.1" - connectionAnchor="//@framedModel/@elements.0/@model/@elements.2"> - <sourceLabel name="1..*" /> - <targetLabel name="2..*" /> - </elements> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.0/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.0/@relationships.0" /> - </parts> - <relationships name="rst"> - <first lower="1" holder="//@cromModel/@elements.0/@parts.1/@role" /> - <second lower="2" holder="//@cromModel/@elements.0/@parts.0/@role" /> - </relationships> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/RelationshipConstraintTestGenerator.py b/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/RelationshipConstraintTestGenerator.py deleted file mode 100644 index 8bc1c778274a02db9ad861468e9ffb23b882fea4..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/RelationshipConstraintTestGenerator.py +++ /dev/null @@ -1,315 +0,0 @@ -#!/usr/bin/env python - -#FRaMED testcase generator for (n)-relationships and relationship constraints. -# -#This generator creates testcases for (n)-relationships or testcases for (n)-relationships with all possible combinations of constraints (unregarded impossible constraint combination, e.g. cyclic - acyclic). The generator will create a new folder (Relationship or RelationshipConstraint) in which all testcases (relationship_test_n/relationshipconstraint_test_n) are created. It is called by cmd/terminal with: -# "python TestGenerator.py n" (Create testcases for n-relationships) -# "python TestGenerator.py n true" (Create testcases for n-relationships with all possible constraint combinations) - -import sys, os, itertools - -__author__ = "Duc Dung Dam" -__date__ = "24/04/16" -__version__ = "1.0" -__maintainer__ = "Duc Dung Dam" -__email__ = "dung.dam_duc@tu-dresden.de" -__status__ = "Prototype" - - -types = ['RoleType'] -constraints = ['Irreflexive', 'Reflexive', 'Cyclic', 'Acyclic', 'Total'] - -def write(filename, content, mode): - #0 = create relationship tests - #1 = create relationshipconstraint tests - if mode == 0: - path = os.path.dirname(os.path.realpath(__file__))+"/Relationship"; - if not os.path.exists(path): - os.mkdir(path) - dirPath = "Relationship/" - if mode == 1: - path = os.path.dirname(os.path.realpath(__file__))+"/RelationshipConstraint"; - if not os.path.exists(path): - os.mkdir(path) - dirPath = "RelationshipConstraint/" - filename += '.xmi' - try: - file = open(dirPath+filename, "w") - file.write(content) - file.close() - except: - sys.exit(0) - -def createRelationshipTestcases(n): - print "createRelationshipTestcases" - - for x in types: - for y in range(1, n+1): - content = framedModel = cromModel = '' - - #Header - filename = 'relationship_test_'+str(y) - description = "TestCase for "+ str(y) +" relationship(s) between two " + x + "(s)" - title = "TestCase for "+ str(y) +" relationship(s)" - header = ('<?xml version="1.0" encoding="ASCII"?>\n' - '<ts:TestCase\n' - '\txmi:version=\"2.0"\n' - '\txmlns:xmi="http://www.omg.org/XMI"\n' - '\txmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\n' - '\txmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/"\n' - '\txmlns:org.framed.orm.model="http://orm/1.0"\n' - '\txmlns:ts="http://org.framed/testmodel"\n' - '\ttitle="'+title+'"\n' - '\tdescription="'+description+'">\n') - content += header - print filename - - #FramedModel - framedModel += ('\t<framedModel>\n' - '\t\t<elements\n' - '\t\t\txsi:type="org.framed.orm.model:Shape"\n' - '\t\t\tname="Test">\n' - '\t\t\t<model>\n') - - #FramedModel - Elements - #FramedModel - Elements - Loop for outgoingRelations/incomingRelations - framedRelations = '' - for z in range (0, y): - framedRelations += '//@framedModel/@elements.0/@model/@elements.'+str(z+2)+' ' - framedRelations = framedRelations[:-1] - framedModel += ('\t\t\t\t<elements\n' - '\t\t\t\t\txsi:type="org.framed.orm.model:Shape"\n' - '\t\t\t\t\tname="RoleType1"\n' - '\t\t\t\t\toutgoingRelations="') - framedModel += framedRelations - framedModel += '"\n\t\t\t\t\ttype="'+ x +'"/>\n' - framedModel += ('\t\t\t\t<elements\n' - '\t\t\t\t\txsi:type="org.framed.orm.model:Shape"\n' - '\t\t\t\t\tname="RoleType2"\n' - '\t\t\t\t\tincomingRelations="') - framedModel += framedRelations - framedModel += '\"\n\t\t\t\t\ttype=\"'+ x +'\"/>\n' - - #FramedModel - Relations - for z in range (0, y): - framedModel += ('\t\t\t\t<elements\n' - '\t\t\t\t\txsi:type="org.framed.orm.model:Relation"\n' - '\t\t\t\t\tname="testRelation_'+str(z)+'"\n' - '\t\t\t\t\ttype="Relationship"\n' - '\t\t\t\t\ttarget="//@framedModel/@elements.0/@model/@elements.1"\n' - '\t\t\t\t\tsource="//@framedModel/@elements.0/@model/@elements.0"/>\n') - - framedModel += ('\t\t\t</model>\n' - '\t\t</elements>\n' - '\t</framedModel>\n') - content += framedModel - - #CromModel - cromModel += ('\t<cromModel>\n' - '\t\t<elements\n' - '\t\t\txsi:type="crom_l1_composed:CompartmentType"\n' - '\t\t\tname="Test">\n') - - #CromModel - Elements - #CromModel - Elements - Loop for outgoingRelations/incomingRelations - cromRelations = '' - for z in range (0, y): - cromRelations += '//@cromModel/@elements.0/@relationships.'+str(z)+' ' - cromRelations = cromRelations[:-1] - cromModel += ('\t\t\t<parts>\n' - '\t\t\t\t<role\n' - '\t\t\t\txsi:type="crom_l1_composed:'+ x +'"\n' - '\t\t\t\tname="RoleType1"\n' - '\t\t\t\toutgoing=\"') - cromModel += cromRelations - cromModel += ('"/>\n' - '\t\t\t</parts>\n') - - cromModel += ('\t\t\t<parts>\n' - '\t\t\t\t<role\n' - '\t\t\t\t\txsi:type="crom_l1_composed:'+ x +'"\n' - '\t\t\t\t\tname="RoleType2"\n' - '\t\t\t\t\tincoming="') - cromModel += cromRelations - cromModel += ('"/>\n' - '\t\t\t</parts>\n') - - #CromModel - Relations - for z in xrange(0, y): - cromModel += '\t\t\t<relationships name=\"testRelation_'+ str(z) +'\"/>\n' - - cromModel += ('\t\t</elements>\n' - '\t</cromModel>\n') - content += cromModel - - #Footer - footer = "</ts:TestCase>" - content += footer - - write(filename, content, 0) - -def createRelationshipConstraintsTestcases(n): - print "createRelationshipConstraintsTestcases" - - #Generate all possible combinations of constraints for n relationships - cons = [] - for y in range(1,len(constraints)+1): - cons.extend(itertools.combinations(constraints, y)) - cons_combinations = [] - for n_relationship in range(1, n+1): - cons_combinations.extend(itertools.product(cons, repeat = n_relationship)) - - #Start generate testcase - counter = 1 - for tupel_constraint in cons_combinations: - #print "testcase with " + str(len(tupel_constraint)) + " relationship(s) and " + str(tupel_constraint) + " constraint(s)" - - #Init - content = framedModel = cromModel = '' - - #Create all elements for FramedModel and CromModel - - framedRelations = framedRelationships = framedConstraints = '' - cromRelations = cromRelationships = cromConstraints = '' - - - framedElementsCounter = 2 #2 because elements.0 and elements.1 are Roletypes - relationshipCounter = 0 - framedElementsConstraintCounter = framedElementsCounter+len(tupel_constraint) - - for constraint in tupel_constraint: - #outgoing/incoming relations - #framedModel - framedRelations += '//@framedModel/@elements.0/@model/@elements.'+str(framedElementsCounter)+" " - #cromModel - cromRelations += '//@cromModel/@elements.0/@relationships.'+str(relationshipCounter)+" " - #constraint elements - referencedRelation = 'referencedRelation="' - for element_constraint in constraint: - #framedModel - framedConstraints += ('\t\t\t\t<elements\n' - '\t\t\t\t\txsi:type="org.framed.orm.model:Relation"\n' - '\t\t\t\t\tname="'+element_constraint+'" type="'+element_constraint+'"\n' - '\t\t\t\t\ttarget="//@framedModel/@elements.0/@model/@elements.1"\n' - '\t\t\t\t\tsource="//@framedModel/@elements.0/@model/@elements.0"\n' - '\t\t\t\t\treferencedRelation="//@framedModel/@elements.0/@model/@elements.'+str(framedElementsCounter)+'"/>\n') - referencedRelation += '//@framedModel/@elements.0/@model/@elements.'+str(framedElementsConstraintCounter)+' ' - framedElementsConstraintCounter += 1 - #cromModel - cromConstraints += ('\t\t\t\t<constraints\n' - '\t\t\t\t\txsi:type="crom_l1_composed:'+element_constraint+'"\n' - '\t\t\t\t\trelation="//@cromModel/@elements.0/@relationships.'+str(relationshipCounter)+'"/>\n') - referencedRelation = referencedRelation[:-1]+'"' - - #relationship elements - #framedModel - framedRelationships += ('\t\t\t\t<elements\n' - '\t\t\t\t\txsi:type="org.framed.orm.model:Relation"\n' - '\t\t\t\t\tname="testRelation_' +str(relationshipCounter)+ '"\n' - '\t\t\t\t\ttype="Relationship"\n' - '\t\t\t\t\ttarget="//@framedModel/@elements.0/@model/@elements.1"\n' - '\t\t\t\t\tsource="//@framedModel/@elements.0/@model/@elements.0"\n' - '\t\t\t\t\t'+referencedRelation+'/>\n') - - #cromModel - cromRelationships += ('\t\t\t\t<relationships name="testRelation_'+str(relationshipCounter)+'"/>\n') - - framedElementsCounter += 1 - relationshipCounter += 1 - - #Header - filename = 'relationshipconstraint_test_'+str(counter) - description = "TestCase for "+ str(len(tupel_constraint)) +" relationship(s) with constraints "+ str(tupel_constraint) +" between two " + types[0] - title = "TestCase for "+ str(len(tupel_constraint)) +" relationship(s) with constraints "+ str(tupel_constraint) - header = ("<?xml version=\"1.0\" encoding=\"ASCII\"?>\n" - "<ts:TestCase\n" - "\txmi:version=\"2.0\"\n" - "\txmlns:xmi=\"http://www.omg.org/XMI\"\n" - "\txmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n" - "\txmlns:crom_l1_composed=\"platform:/resource/org.rosi.crom.metamodel/\"\n" - "\txmlns:org.framed.orm.model=\"http://orm/1.0\"\n" - "\txmlns:ts=\"http://org.framed/testmodel\"\n" - "\ttitle=\""+title+"\"\n" - "\tdescription=\""+description+"\">\n") - content += header - #FramedModel - #Header - framedModel += '\t<framedModel>\n' - #Content - framedModel += ('\t\t<elements\n' - '\t\t\txsi:type="org.framed.orm.model:Shape"\n' - '\t\t\tname="Test">\n' - '\t\t\t<model>\n' - #Roletype1 - '\t\t\t\t<elements\n' - '\t\t\t\t\t\txsi:type="org.framed.orm.model:Shape"\n' - '\t\t\t\t\t\tname="'+types[0]+'1"\n' - '\t\t\t\t\t\toutgoingRelations="'+framedRelations+'"\n' - '\t\t\t\t\t\ttype="RoleType"/>\n' - #Roletype2 - '\t\t\t\t<elements\n' - '\t\t\t\t\t\txsi:type="org.framed.orm.model:Shape"\n' - '\t\t\t\t\t\tname="'+types[0]+'2"\n' - '\t\t\t\t\t\tincomingRelations="'+framedRelations+'"\n' - '\t\t\t\t\t\ttype="RoleType"/>\n') - #Relationships - framedModel += framedRelationships - #Constraints - framedModel += framedConstraints - #Footer - framedModel += ('\t\t\t</model>\n' - '\t\t</elements>\n' - '\t</framedModel>\n') - content += framedModel - - #CromModel - #Header - cromModel += '\t<cromModel>\n' - #Content - cromModel += ('\t\t<elements\n' - '\t\t\txsi:type="crom_l1_composed:CompartmentType"\n' - '\t\t\tname="Test">\n' - #Roletype1 - '\t\t\t<parts>\n' - '\t\t\t\t<role\n' - '\t\t\t\t\txsi:type="crom_l1_composed:RoleType"\n' - '\t\t\t\t\tname="RoleType1"\n' - '\t\t\t\t\toutgoing="'+cromRelations+'"/>\n' - '\t\t\t</parts>\n' - #Roletype2 - '\t\t\t<parts>\n' - '\t\t\t\t<role\n' - '\t\t\t\t\txsi:type="crom_l1_composed:RoleType"\n' - '\t\t\t\t\tname="RoleType2"\n' - '\t\t\t\t\tincoming="'+cromRelations+'"/>\n' - '\t\t\t</parts>\n') - #Relationships - cromModel += cromRelationships - #Constraints - cromModel += cromConstraints - #Footer - cromModel += ('\t\t</elements>\n' - '\t</cromModel>\n') - content += cromModel - - #Footer - footer = "</ts:TestCase>" - content += footer - - write(filename, content, 1) - counter += 1 - -def init(): - print "Generating Testcases:" - if sys.argv is not None: - #python TestGenerator (int)n (creates testcases from 1 to n relationships) - if len(sys.argv) == 2: - createRelationshipTestcases(int(sys.argv[1])) - - #python TestGenerator (int)n (bool)true (creates testcases from 1 to n relationships with all possible constraint combinations) - if len(sys.argv) == 3 and bool(sys.argv[2]) is True: - createRelationshipConstraintsTestcases(int(sys.argv[1])) - else: - createRelationshipTestcases(1) - -init() diff --git a/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/relationshipConstraint_test_1.xmi b/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/relationshipConstraint_test_1.xmi deleted file mode 100644 index f2487b0139f3d7f82b0d4a1630f92998b7bceb21..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/relationshipConstraint_test_1.xmi +++ /dev/null @@ -1,257 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel" - title="TestCase for 3 relationship(s) with constraints (('Irreflexive', 'Reflexive', 'Cyclic', 'Acyclic', 'Total'), ('Irreflexive', 'Reflexive', 'Cyclic', 'Acyclic', 'Total'), ('Irreflexive', 'Reflexive', 'Cyclic', 'Acyclic', 'Total'))" - description="TestCase for 3 relationship(s) with constraints (('Irreflexive', 'Reflexive', 'Cyclic', 'Acyclic', 'Total'), ('Irreflexive', 'Reflexive', 'Cyclic', 'Acyclic', 'Total'), ('Irreflexive', 'Reflexive', 'Cyclic', 'Acyclic', 'Total')) between two RoleType"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7 //@framedModel/@elements.1/@model/@elements.9 //@framedModel/@elements.1/@model/@elements.12 //@framedModel/@elements.1/@model/@elements.14 //@framedModel/@elements.1/@model/@elements.15 //@framedModel/@elements.1/@model/@elements.16 //@framedModel/@elements.1/@model/@elements.17 //@framedModel/@elements.1/@model/@elements.18 //@framedModel/@elements.1/@model/@elements.19 //@framedModel/@elements.1/@model/@elements.20 //@framedModel/@elements.1/@model/@elements.21 //@framedModel/@elements.1/@model/@elements.22 //@framedModel/@elements.1/@model/@elements.23 //@framedModel/@elements.1/@model/@elements.24 //@framedModel/@elements.1/@model/@elements.25 //@framedModel/@elements.1/@model/@elements.26" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7 //@framedModel/@elements.1/@model/@elements.9 //@framedModel/@elements.1/@model/@elements.12 //@framedModel/@elements.1/@model/@elements.14 //@framedModel/@elements.1/@model/@elements.15 //@framedModel/@elements.1/@model/@elements.16 //@framedModel/@elements.1/@model/@elements.17 //@framedModel/@elements.1/@model/@elements.18 //@framedModel/@elements.1/@model/@elements.19 //@framedModel/@elements.1/@model/@elements.20 //@framedModel/@elements.1/@model/@elements.21 //@framedModel/@elements.1/@model/@elements.22 //@framedModel/@elements.1/@model/@elements.23 //@framedModel/@elements.1/@model/@elements.24 //@framedModel/@elements.1/@model/@elements.25 //@framedModel/@elements.1/@model/@elements.26" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7 //@framedModel/@elements.1/@model/@elements.15 //@framedModel/@elements.1/@model/@elements.16 //@framedModel/@elements.1/@model/@elements.17" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" - type="Irreflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Acyclic" - type="Acyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst2" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.14 //@framedModel/@elements.1/@model/@elements.18 //@framedModel/@elements.1/@model/@elements.19 //@framedModel/@elements.1/@model/@elements.20 //@framedModel/@elements.1/@model/@elements.21" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.8"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst3" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.22 //@framedModel/@elements.1/@model/@elements.23 //@framedModel/@elements.1/@model/@elements.24 //@framedModel/@elements.1/@model/@elements.25 //@framedModel/@elements.1/@model/@elements.26" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.11"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" - type="Irreflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.9"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Reflexive" - type="Reflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Total" - type="Total" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Cyclic" - type="Cyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Reflexive" - type="Reflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.9"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Total" - type="Total" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.9"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Cyclic" - type="Cyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.9"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Acyclic" - type="Acyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.9"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Reflexive" - type="Reflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.12"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" - type="Irreflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.12"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Total" - type="Total" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.12"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Cyclic" - type="Cyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.12"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Acyclic" - type="Acyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.12"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0 //@cromModel/@elements.1/@relationships.1 //@cromModel/@elements.1/@relationships.2" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0 //@cromModel/@elements.1/@relationships.1 //@cromModel/@elements.1/@relationships.2" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <relationships name="rst2"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <relationships name="rst3"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Acyclic" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.1/@relationships.1" /> - <constraints xsi:type="crom_l1_composed:Reflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Total" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Cyclic" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Reflexive" - relation="//@cromModel/@elements.1/@relationships.1" /> - <constraints xsi:type="crom_l1_composed:Total" - relation="//@cromModel/@elements.1/@relationships.1" /> - <constraints xsi:type="crom_l1_composed:Cyclic" - relation="//@cromModel/@elements.1/@relationships.1" /> - <constraints xsi:type="crom_l1_composed:Acyclic" - relation="//@cromModel/@elements.1/@relationships.1" /> - <constraints xsi:type="crom_l1_composed:Reflexive" - relation="//@cromModel/@elements.1/@relationships.2" /> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.1/@relationships.2" /> - <constraints xsi:type="crom_l1_composed:Total" - relation="//@cromModel/@elements.1/@relationships.2" /> - <constraints xsi:type="crom_l1_composed:Cyclic" - relation="//@cromModel/@elements.1/@relationships.2" /> - <constraints xsi:type="crom_l1_composed:Acyclic" - relation="//@cromModel/@elements.1/@relationships.2" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/relationshipConstraint_test_2.xmi b/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/relationshipConstraint_test_2.xmi deleted file mode 100644 index 7cbc38bccf1e6f686437a341c592352939d45056..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RelationshipConstraint/relationshipConstraint_test_2.xmi +++ /dev/null @@ -1,137 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel" - title="TestCase for 1 relationship(s) with constraint" - description="TestCase for 1 relationship(s) with constraint between two RoleType(s)"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7 //@framedModel/@elements.1/@model/@elements.8" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3 //@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7 //@framedModel/@elements.1/@model/@elements.8" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.6 //@framedModel/@elements.1/@model/@elements.7 //@framedModel/@elements.1/@model/@elements.8" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="*" /> - <targetLabel name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Irreflexive" - type="Irreflexive" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Total" - type="Total" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="Acyclic" - type="Acyclic" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - referencedRelation="//@framedModel/@elements.1/@model/@elements.3"> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <relationships name="rst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Total" - relation="//@cromModel/@elements.1/@relationships.0" /> - <constraints xsi:type="crom_l1_composed:Acyclic" - relation="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> \ No newline at end of file diff --git a/org.framed.orm.transformation.test/testcases1/RelationshipExclusion/relationshipExclusion_test_1.xmi b/org.framed.orm.transformation.test/testcases1/RelationshipExclusion/relationshipExclusion_test_1.xmi deleted file mode 100644 index e09ee1094bf93ba0dcddc0b1e3f94100adc758de..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RelationshipExclusion/relationshipExclusion_test_1.xmi +++ /dev/null @@ -1,141 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for RelationshipExclusions" - description="Simple TestCase for RelationshipExclusions"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.orm.model:Shape" name="RT1" - incomingRelations="//@framedModel/@elements.1/@model/@elements.6" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.3" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="RT2" - incomingRelations="//@framedModel/@elements.1/@model/@elements.3" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.6" - type="RoleType"> - <firstSegment /> - <secondSegment /> - <description name="*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - incomingRelations="//@framedModel/@elements.1/@model/@elements.8" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="rst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.1" - source="//@framedModel/@elements.1/@model/@elements.0" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.2"> - <sourceLabel name="1" /> - <targetLabel name="1..*" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - outgoingRelations="//@framedModel/@elements.1/@model/@elements.8" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" name="subrst" - type="Relationship" target="//@framedModel/@elements.1/@model/@elements.0" - source="//@framedModel/@elements.1/@model/@elements.1" - connectionAnchor="//@framedModel/@elements.1/@model/@elements.5"> - <sourceLabel name="*" /> - <targetLabel name="0..1" /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="" - type="RelationshipShapeChild"> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="RelationshipExclusion" - target="//@framedModel/@elements.1/@model/@elements.2" source="//@framedModel/@elements.1/@model/@elements.5" /> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT1" - incoming="//@cromModel/@elements.1/@relationships.1" outgoing="//@cromModel/@elements.1/@relationships.0" /> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="RT2" - incoming="//@cromModel/@elements.1/@relationships.0" outgoing="//@cromModel/@elements.1/@relationships.1" /> - </parts> - <relationships name="rst"> - <first lower="1" upper="1" - holder="//@cromModel/@elements.1/@parts.0/@role" /> - <second lower="1" holder="//@cromModel/@elements.1/@parts.1/@role" /> - </relationships> - <relationships name="subrst"> - <first holder="//@cromModel/@elements.1/@parts.1/@role" /> - <second upper="1" holder="//@cromModel/@elements.1/@parts.0/@role" /> - </relationships> - <constraints xsi:type="crom_l1_composed:RelationshipExclusion" - first="//@cromModel/@elements.1/@relationships.1" second="//@cromModel/@elements.1/@relationships.0" /> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.1/@parts.1/@role" filler="//@cromModel/@elements.0" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/RelationshipImplication/relationshipImplication_test_1.xmi b/org.framed.orm.transformation.test/testcases1/RelationshipImplication/relationshipImplication_test_1.xmi deleted file mode 100644 index f6779d937ecf5a6142f3ddbf7dfd5ad664dc6908..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RelationshipImplication/relationshipImplication_test_1.xmi +++ /dev/null @@ -1,115 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for RelationshipImplications" description="Simple TestCase for RelationshipImplications"> - <framedModel> - <elements xsi:type="org.framed.orm.model:Shape" name="NT" - outgoingRelations="//@framedModel/@elements.2" type="NaturalType"> - <firstSegment /> - <secondSegment /> - </elements> - <elements xsi:type="org.framed.orm.model:Shape" name="CT" - incomingRelations="//@framedModel/@elements.2"> - <firstSegment /> - <secondSegment /> - <model> - <elements xsi:type="org.framed.iorm.model:Shape" name="NT" outgoingRelations="/1/@elements.2" type="NaturalType"> - <firstSegment/> - <secondSegment/> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="CT" incomingRelations="/1/@elements.2"> - <firstSegment/> - <secondSegment/> - <model> - <elements xsi:type="org.framed.iorm.model:Shape" name="roleType" incomingRelations="/1/@elements.1/@model/@elements.3" outgoingRelations="/1/@elements.1/@model/@elements.2" type="RoleType"> - <firstSegment/> - <secondSegment/> - <description name="*"/> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="roleType1" incomingRelations="/1/@elements.1/@model/@elements.2" outgoingRelations="/1/@elements.1/@model/@elements.3" type="RoleType"> - <firstSegment/> - <secondSegment/> - <description name="*"/> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" name="rst" incomingRelations="/1/@elements.1/@model/@elements.4" type="Relationship" target="/1/@elements.1/@model/@elements.1" source="/1/@elements.1/@model/@elements.0"> - <sourceLabel name="1"/> - <targetLabel name="1..*"/> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" name="subrst" outgoingRelations="/1/@elements.1/@model/@elements.4" type="Relationship" target="/1/@elements.1/@model/@elements.0" source="/1/@elements.1/@model/@elements.1"> - <sourceLabel name="*"/> - <targetLabel name="0..1"/> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" type="RelationshipImplication" target="/1/@elements.1/@model/@elements.2" source="/1/@elements.1/@model/@elements.3"/> - </model> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" type="Fulfillment" target="/1/@elements.1" source="/1/@elements.0" referencedRoles="/1/@elements.1/@model/@elements.0 /1/@elements.1/@model/@elements.1"/> - </model> - </elements> - <elements xsi:type="org.framed.orm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.1" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.1/@model/@elements.0 //@framedModel/@elements.1/@model/@elements.1" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="NT"/> - <elements xsi:type="crom_l1_composed:CompartmentType" name="CT"> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="roleType" incoming="//@elements.1/@relationships.1" outgoing="//@elements.1/@relationships.0"/> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="roleType1" incoming="//@elements.1/@relationships.0" outgoing="//@elements.1/@relationships.1"/> - </parts> - <relationships name="rst"> - <first lower="1" upper="1" holder="//@elements.1/@parts.0/@role"/> - <second lower="1" holder="//@elements.1/@parts.1/@role"/> - </relationships> - <relationships name="subrst"> - <first holder="//@elements.1/@parts.1/@role"/> - <second upper="1" holder="//@elements.1/@parts.0/@role"/> - </relationships> - <constraints xsi:type="crom_l1_composed:RelationshipImplication" first="//@elements.1/@relationships.1" second="//@elements.1/@relationships.0"/> - </elements> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@elements.1/@parts.0/@role" filler="//@elements.0"/> - <relations xsi:type="crom_l1_composed:Fulfillment" filled="//@elements.1/@parts.1/@role" filler="//@elements.0"/> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/RoleImplication/roleEquivalence_test_1.xmi b/org.framed.orm.transformation.test/testcases1/RoleImplication/roleEquivalence_test_1.xmi deleted file mode 100644 index be80f7c50d0c60811f2fe6ab03806ad08c314843..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RoleImplication/roleEquivalence_test_1.xmi +++ /dev/null @@ -1,94 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for RoleImplications" - description="Simple TestCase for RoleImplications"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="compType1"> - <model> - <elements - xsi:type="org.framed.orm.model:Shape" - name="roleType1" - outgoingRelations="//@framedModel/@elements.0/@model/@elements.2" - type="RoleType"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="roleType2" - incomingRelations="//@framedModel/@elements.0/@model/@elements.2" - type="RoleType"/> - <elements - xsi:type="org.framed.orm.model:Relation" - name="" - type="RoleEquivalence" - target="//@framedModel/@elements.0/@model/@elements.1" - source="//@framedModel/@elements.0/@model/@elements.0"/> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="compType1"> - <parts> - <role - xsi:type="crom_l1_composed:RoleType" - name="roleType1"/> - </parts> - <parts> - <role - xsi:type="crom_l1_composed:RoleType" - name="roleType2"/> - </parts> - <constraints - xsi:type="crom_l1_composed:RoleEquivalence" - first="//@cromModel/@elements.0/@parts.0/@role" - second="//@cromModel/@elements.0/@parts.1/@role"/> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/RoleImplication/roleImplication_test_1.xmi b/org.framed.orm.transformation.test/testcases1/RoleImplication/roleImplication_test_1.xmi deleted file mode 100644 index 28005fd3cf32cf7c752b0bb0733c4d10dcd72489..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RoleImplication/roleImplication_test_1.xmi +++ /dev/null @@ -1,94 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for RoleImplications" - description="Simple TestCase for RoleImplications"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="compType1"> - <model> - <elements - xsi:type="org.framed.orm.model:Shape" - name="roleType1" - outgoingRelations="//@framedModel/@elements.0/@model/@elements.2" - type="RoleType"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="roleType2" - incomingRelations="//@framedModel/@elements.0/@model/@elements.2" - type="RoleType"/> - <elements - xsi:type="org.framed.orm.model:Relation" - name="" - type="RoleImplication" - target="//@framedModel/@elements.0/@model/@elements.1" - source="//@framedModel/@elements.0/@model/@elements.0"/> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="compType1"> - <parts> - <role - xsi:type="crom_l1_composed:RoleType" - name="roleType1"/> - </parts> - <parts> - <role - xsi:type="crom_l1_composed:RoleType" - name="roleType2"/> - </parts> - <constraints - xsi:type="crom_l1_composed:RoleImplication" - first="//@cromModel/@elements.0/@parts.0/@role" - second="//@cromModel/@elements.0/@parts.1/@role"/> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/RoleImplication/roleProhibition_test_1.xmi b/org.framed.orm.transformation.test/testcases1/RoleImplication/roleProhibition_test_1.xmi deleted file mode 100644 index 5cdf357c0a9c892e33ebefa51e0719cd3c87b0e4..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/RoleImplication/roleProhibition_test_1.xmi +++ /dev/null @@ -1,94 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase - xmi:version="2.0" - xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.orm.model="http://orm/1.0" - xmlns:ts="http://org.framed/testmodel" - title="Simple TestCase for RoleImplications" - description="Simple TestCase for RoleImplications"> - <framedModel> - <elements - xsi:type="org.framed.orm.model:Shape" - name="compType1"> - <model> - <elements - xsi:type="org.framed.orm.model:Shape" - name="roleType1" - outgoingRelations="//@framedModel/@elements.0/@model/@elements.2" - type="RoleType"/> - <elements - xsi:type="org.framed.orm.model:Shape" - name="roleType2" - incomingRelations="//@framedModel/@elements.0/@model/@elements.2" - type="RoleType"/> - <elements - xsi:type="org.framed.orm.model:Relation" - name="" - type="RoleProhibition" - target="//@framedModel/@elements.0/@model/@elements.1" - source="//@framedModel/@elements.0/@model/@elements.0"/> - </model> - </elements> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements - xsi:type="crom_l1_composed:CompartmentType" - name="compType1"> - <parts> - <role - xsi:type="crom_l1_composed:RoleType" - name="roleType1"/> - </parts> - <parts> - <role - xsi:type="crom_l1_composed:RoleType" - name="roleType2"/> - </parts> - <constraints - xsi:type="crom_l1_composed:RoleProhibition" - first="//@cromModel/@elements.0/@parts.0/@role" - second="//@cromModel/@elements.0/@parts.1/@role"/> - </elements> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation.test/testcases1/integration/bank_example_test.xmi b/org.framed.orm.transformation.test/testcases1/integration/bank_example_test.xmi deleted file mode 100644 index c0a075c4397aec87d201e43a0f0484768be3a42e..0000000000000000000000000000000000000000 --- a/org.framed.orm.transformation.test/testcases1/integration/bank_example_test.xmi +++ /dev/null @@ -1,407 +0,0 @@ -<?xml version="1.0" encoding="ASCII"?> -<ts:TestCase xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xmlns:crom_l1_composed="platform:/resource/org.rosi.crom.metamodel/" - xmlns:org.framed.iorm.model="http://iorm/1.0" xmlns:ts="http://org.framed/testmodel" - title="BankExample Test" description="BankExample Test"> - <framedModel> - <elements xsi:type="org.framed.iorm.model:Shape" name="Person" - outgoingRelations="//@framedModel/@elements.11" type="NaturalType"> - <firstSegment> - <elements name="title : String" /> - <elements name="firstName : String" /> - <elements name="lastName : String" /> - <elements name="address : String" /> - </firstSegment> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="Company" - outgoingRelations="//@framedModel/@elements.12" type="NaturalType"> - <firstSegment> - <elements name="name : String" /> - <elements name="legalForm : String" /> - <elements name="addresses : String" /> - <elements name="POBox : String" /> - </firstSegment> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="Bank" - incomingRelations="//@framedModel/@elements.11 //@framedModel/@elements.12 //@framedModel/@elements.13 //@framedModel/@elements.15 //@framedModel/@elements.14"> - <firstSegment> - <elements name="name : String" /> - </firstSegment> - <secondSegment> - <elements name="executeTransactions()" /> - </secondSegment> - <model> - <elements xsi:type="org.framed.iorm.model:Shape" name="Customer" - incomingRelations="//@framedModel/@elements.2/@model/@elements.2" - outgoingRelations="//@framedModel/@elements.2/@model/@elements.5 //@framedModel/@elements.2/@model/@elements.6" - type="RoleType"> - <firstSegment> - <elements name="id : Integer" /> - <elements name="name : String" /> - </firstSegment> - <secondSegment> - <elements name="addSavingsAccount() : Boolean" /> - <elements name="addCheckingsAccount() : Boolean" /> - <elements name="getAccounts() : Integer" /> - <elements name="getBalance(id : Integer) : Money" /> - <elements name="transfer(from : Integer, to : Integer) : Boolean" /> - <elements name="sendAccountStatement(id : Integer) : Boolean" /> - </secondSegment> - <description name="0..*" /> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="Consultant" - outgoingRelations="//@framedModel/@elements.2/@model/@elements.2" - type="RoleType"> - <firstSegment> - <elements name="Phone : String" /> - </firstSegment> - <secondSegment> - <elements name="consult(id : Integer)" /> - </secondSegment> - <description name="1..*" /> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" name="advices" - type="Relationship" target="//@framedModel/@elements.2/@model/@elements.0" - source="//@framedModel/@elements.2/@model/@elements.1"> - <sourceLabel name="0..*" /> - <targetLabel name="1..*" /> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="Transaction" - type="RoleType"> - <firstSegment> - <elements name="execution : DateTime" /> - </firstSegment> - <secondSegment> - <elements name="execute() : Boolean" /> - <elements name="isExecuted() : Boolean" /> - </secondSegment> - <description name="0..*" /> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="RoleGroup (1..1)" - type="RoleGroup"> - <model> - <elements xsi:type="org.framed.iorm.model:Shape" name="CheckingsAccount" - incomingRelations="//@framedModel/@elements.2/@model/@elements.5" - type="RoleType"> - <firstSegment> - <elements name="limit : Money" /> - </firstSegment> - <secondSegment> - <elements name="decrease(amount : Money) " /> - <elements name="getLimit() : Money" /> - <elements name="setLimit(limit : Money) " /> - </secondSegment> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="SavingsAccount" - incomingRelations="//@framedModel/@elements.2/@model/@elements.6" - type="RoleType"> - <firstSegment> - <elements name="transactionFee:Double" /> - </firstSegment> - <secondSegment> - <elements name="decrease(amount : Money) " /> - </secondSegment> - </elements> - </model> - <description name="0..*" /> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" name="own_ca" - type="Relationship" - target="//@framedModel/@elements.2/@model/@elements.4/@model/@elements.0" - source="//@framedModel/@elements.2/@model/@elements.0"> - <sourceLabel name="1" /> - <targetLabel name="0..*" /> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" name="own_sa" - type="Relationship" - target="//@framedModel/@elements.2/@model/@elements.4/@model/@elements.1" - source="//@framedModel/@elements.2/@model/@elements.0"> - <sourceLabel name="1..*" /> - <targetLabel name="0..*" /> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="String" - type="DataType" /> - <elements xsi:type="org.framed.iorm.model:Shape" name="Transaction" - outgoingRelations="//@framedModel/@elements.13"> - <firstSegment> - <elements name="creationtime : DateTime" /> - <elements name="amount : Money" /> - </firstSegment> - <secondSegment> - <elements name="bind(source:Account, target:Account):Boolean" /> - <elements name="execute() : Boolean" /> - </secondSegment> - <model> - <elements xsi:type="org.framed.iorm.model:Shape" name="RoleGroup (1..1)" - type="RoleGroup"> - <model> - <elements xsi:type="org.framed.iorm.model:Shape" name="Source" - outgoingRelations="//@framedModel/@elements.4/@model/@elements.0/@model/@elements.2 //@framedModel/@elements.4/@model/@elements.0/@model/@elements.3" - type="RoleType"> - <secondSegment> - <elements name="withdraw(amount:Money)" /> - </secondSegment> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="Target" - incomingRelations="//@framedModel/@elements.4/@model/@elements.0/@model/@elements.2 //@framedModel/@elements.4/@model/@elements.0/@model/@elements.3" - type="RoleType"> - <secondSegment> - <elements name="deposite(amount:Money)" /> - </secondSegment> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" name="trans" - type="Relationship" - target="//@framedModel/@elements.4/@model/@elements.0/@model/@elements.1" - source="//@framedModel/@elements.4/@model/@elements.0/@model/@elements.0" - referencedRelation="//@framedModel/@elements.4/@model/@elements.0/@model/@elements.3"> - <sourceLabel name="1" /> - <targetLabel name="1" /> - </elements> - <elements xsi:type="org.framed.iorm.model:Relation" name="" - type="Irreflexive" - target="//@framedModel/@elements.4/@model/@elements.0/@model/@elements.1" - source="//@framedModel/@elements.4/@model/@elements.0/@model/@elements.0" - referencedRelation="//@framedModel/@elements.4/@model/@elements.0/@model/@elements.2" /> - </model> - <description name="2..2" /> - </elements> - </model> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="Account" - outgoingRelations="//@framedModel/@elements.14 //@framedModel/@elements.15" - type="NaturalType"> - <firstSegment> - <elements name="id : Integer" /> - <elements name="balance : Money" /> - </firstSegment> - <secondSegment> - <elements name="getBalance() : Money" /> - <elements name="getId() : Integer" /> - <elements name="increase(amount: Money)" /> - <elements name="decrease(amount : Money)" /> - </secondSegment> - </elements> - <elements xsi:type="org.framed.iorm.model:Shape" name="Integer" - type="DataType" /> - <elements xsi:type="org.framed.iorm.model:Shape" name="Boolean" - type="DataType" /> - <elements xsi:type="org.framed.iorm.model:Shape" name="Money" - type="DataType" /> - <elements xsi:type="org.framed.iorm.model:Shape" name="Double" - type="DataType" /> - <elements xsi:type="org.framed.iorm.model:Shape" name="DateTime" - type="DataType" /> - <elements xsi:type="org.framed.iorm.model:Relation" name="" - type="Fulfillment" target="//@framedModel/@elements.2" source="//@framedModel/@elements.0" - referencedRoles="//@framedModel/@elements.2/@model/@elements.1 //@framedModel/@elements.2/@model/@elements.0" /> - <elements xsi:type="org.framed.iorm.model:Relation" name="" - type="Fulfillment" target="//@framedModel/@elements.2" source="//@framedModel/@elements.1" - referencedRoles="//@framedModel/@elements.2/@model/@elements.0" /> - <elements xsi:type="org.framed.iorm.model:Relation" name="" - type="Fulfillment" target="//@framedModel/@elements.2" source="//@framedModel/@elements.4" - referencedRoles="//@framedModel/@elements.2/@model/@elements.3" /> - <elements xsi:type="org.framed.iorm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.2" source="//@framedModel/@elements.5" - referencedRoles="//@framedModel/@elements.2/@model/@elements.4" /> - <elements xsi:type="org.framed.iorm.model:Relation" type="Fulfillment" - target="//@framedModel/@elements.2" source="//@framedModel/@elements.5" - referencedRoles="//@framedModel/@elements.4/@model/@elements.0" /> - <framedConfiguration> - <features/> - <features name="Role_Types"/> - <features name="Role_Structure"/> - <features name="Role_Properties" manuallySelected="true"/> - <features name="Role_Behavior"/> - <features name="Role_Inheritance" manuallySelected="true"/> - <features name="Playable"/> - <features name="Players"/> - <features name="Naturals"/> - <features name="Roles"/> - <features name="Compartments" manuallySelected="true"/> - <features name="Dates" manuallySelected="true"/> - <features name="Dependent"/> - <features name="On_Compartments"/> - <features name="On_Relationships"/> - <features name="Role_Constraints"/> - <features name="Role_Implication" manuallySelected="true"/> - <features name="Role_Prohibition" manuallySelected="true"/> - <features name="Role_Equivalence"/> - <features name="Group_Constraints" manuallySelected="true"/> - <features name="Occurrence_Constraints" manuallySelected="true"/> - <features name="Relationships"/> - <features name="Relationship_Constraints"/> - <features name="Relationship_Cardinality" manuallySelected="true"/> - <features name="Intra_Relationship_Constraints"/> - <features name="Parthood_Constraints" manuallySelected="true"/> - <features name="Inter_Relationship_Constraints" manuallySelected="true"/> - <features name="Compartment_Types"/> - <features name="Compartment_Structure"/> - <features name="Compartment_Properties" manuallySelected="true"/> - <features name="Compartment_Behavior"/> - <features name="Compartment_Inheritance" manuallySelected="true"/> - <features name="Participants"/> - <features name="Contains_Compartments" manuallySelected="true"/> - <features name="Playable_by_Defining_Compartment" manuallySelected="true"/> - <features name="Data_Types"/> - <features name="Data_Type_Inheritance" manuallySelected="true"/> - </framedConfiguration> - </framedModel> - <cromModel> - <elements xsi:type="crom_l1_composed:NaturalType" name="Person"> - <attributes name="title" type="//@cromModel/@elements.3" /> - <attributes name="firstName" type="//@cromModel/@elements.3" /> - <attributes name="lastName" type="//@cromModel/@elements.3" /> - <attributes name="address" type="//@cromModel/@elements.3" /> - </elements> - <elements xsi:type="crom_l1_composed:NaturalType" name="Company"> - <attributes name="name" type="//@cromModel/@elements.3" /> - <attributes name="legalFiorm" type="//@cromModel/@elements.3" /> - <attributes name="addresses" type="//@cromModel/@elements.3" /> - <attributes name="POBox" type="//@cromModel/@elements.3" /> - </elements> - <elements xsi:type="crom_l1_composed:CompartmentType" name="Bank"> - <attributes name="name" type="//@cromModel/@elements.3" /> - <operations name="executeTransactions" /> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="Customer" - incoming="//@cromModel/@elements.2/@relationships.0" - outgoing="//@cromModel/@elements.2/@relationships.1 //@cromModel/@elements.2/@relationships.2"> - <attributes name="id" type="//@cromModel/@elements.6" /> - <attributes name="name" type="//@cromModel/@elements.3" /> - <operations name="addSavingsAccount" type="//@cromModel/@elements.7" /> - <operations name="addCheckingsAccount" type="//@cromModel/@elements.7" /> - <operations name="getAccounts" type="//@cromModel/@elements.6" /> - <operations name="getBalance" type="//@cromModel/@elements.8"> - <params name="id" type="//@cromModel/@elements.6" /> - </operations> - <operations name="transfer" type="//@cromModel/@elements.7"> - <params name="from" type="//@cromModel/@elements.6" /> - <params name="to" type="//@cromModel/@elements.6" /> - </operations> - <operations name="sendAccountStatement" type="//@cromModel/@elements.7"> - <params name="id" type="//@cromModel/@elements.6" /> - </operations> - </role> - </parts> - <parts lower="1"> - <role xsi:type="crom_l1_composed:RoleType" name="Consultant" - outgoing="//@cromModel/@elements.2/@relationships.0"> - <attributes name="Phone" type="//@cromModel/@elements.3" /> - <operations name="consult"> - <params name="id" type="//@cromModel/@elements.6" /> - </operations> - </role> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleType" name="Transaction"> - <attributes name="execution" type="//@cromModel/@elements.10" /> - <operations name="execute" type="//@cromModel/@elements.7" /> - <operations name="isExecuted" type="//@cromModel/@elements.7" /> - </role> - </parts> - <parts> - <role xsi:type="crom_l1_composed:RoleGroup" name="RoleGroup" - lower="1" upper="1"> - <elements xsi:type="crom_l1_composed:RoleType" name="CheckingsAccount" - incoming="//@cromModel/@elements.2/@relationships.1"> - <attributes name="limit" type="//@cromModel/@elements.8" /> - <operations name="decrease"> - <params name="amount" type="//@cromModel/@elements.8" /> - </operations> - <operations name="getLimit" type="//@cromModel/@elements.8" /> - <operations name="setLimit"> - <params name="limit" type="//@cromModel/@elements.8" /> - </operations> - </elements> - <elements xsi:type="crom_l1_composed:RoleType" name="SavingsAccount" - incoming="//@cromModel/@elements.2/@relationships.2"> - <attributes name="transactionFee" type="//@cromModel/@elements.9" /> - <operations name="decrease"> - <params name="amount" type="//@cromModel/@elements.8" /> - </operations> - </elements> - </role> - </parts> - <relationships name="advices"> - <first holder="//@cromModel/@elements.2/@parts.1/@role" /> - <second lower="1" holder="//@cromModel/@elements.2/@parts.0/@role" /> - </relationships> - <relationships name="own_ca"> - <first lower="1" upper="1" - holder="//@cromModel/@elements.2/@parts.0/@role" /> - <second holder="//@cromModel/@elements.2/@parts.3/@role/@elements.0" /> - </relationships> - <relationships name="own_sa"> - <first lower="1" holder="//@cromModel/@elements.2/@parts.0/@role" /> - <second holder="//@cromModel/@elements.2/@parts.3/@role/@elements.1" /> - </relationships> - </elements> - <elements xsi:type="crom_l1_composed:DataType" name="String" /> - <elements xsi:type="crom_l1_composed:CompartmentType" name="Transaction"> - <attributes name="creationtime" type="//@cromModel/@elements.10" /> - <attributes name="amount" type="//@cromModel/@elements.8" /> - <operations name="bind" type="//@cromModel/@elements.7"> - <params name="source" type="//@cromModel/@elements.5" /> - <params name="target" type="//@cromModel/@elements.5" /> - </operations> - <operations name="execute" type="//@cromModel/@elements.7" /> - <parts lower="2" upper="2"> - <role xsi:type="crom_l1_composed:RoleGroup" name="RoleGroup" - lower="1" upper="1"> - <elements xsi:type="crom_l1_composed:RoleType" name="Source" - outgoing="//@cromModel/@elements.4/@relationships.0"> - <operations name="withdraw"> - <params name="amount" type="//@cromModel/@elements.8" /> - </operations> - </elements> - <elements xsi:type="crom_l1_composed:RoleType" name="Target" - incoming="//@cromModel/@elements.4/@relationships.0"> - <operations name="deposite"> - <params name="amount" type="//@cromModel/@elements.8" /> - </operations> - </elements> - </role> - </parts> - <relationships name="trans"> - <first lower="1" upper="1" - holder="//@cromModel/@elements.4/@parts.0/@role/@elements.0" /> - <second lower="1" upper="1" - holder="//@cromModel/@elements.4/@parts.0/@role/@elements.1" /> - </relationships> - <constraints xsi:type="crom_l1_composed:Irreflexive" - relation="//@cromModel/@elements.4/@relationships.0" /> - </elements> - <elements xsi:type="crom_l1_composed:NaturalType" name="Account"> - <attributes name="id" type="//@cromModel/@elements.6" /> - <attributes name="balance" type="//@cromModel/@elements.8" /> - <operations name="getBalance" type="//@cromModel/@elements.8" /> - <operations name="getId" type="//@cromModel/@elements.6" /> - <operations name="increase"> - <params name="amount" type="//@cromModel/@elements.8" /> - </operations> - <operations name="decrease"> - <params name="amount" type="//@cromModel/@elements.8" /> - </operations> - </elements> - <elements xsi:type="crom_l1_composed:DataType" name="Integer" /> - <elements xsi:type="crom_l1_composed:DataType" name="Boolean" /> - <elements xsi:type="crom_l1_composed:DataType" name="Money" /> - <elements xsi:type="crom_l1_composed:DataType" name="Double" /> - <elements xsi:type="crom_l1_composed:DataType" name="DateTime" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.2/@parts.1/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.2/@parts.0/@role" filler="//@cromModel/@elements.0" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.2/@parts.0/@role" filler="//@cromModel/@elements.1" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.2/@parts.2/@role" filler="//@cromModel/@elements.4" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.2/@parts.3/@role" filler="//@cromModel/@elements.5" /> - <relations xsi:type="crom_l1_composed:Fulfillment" - filled="//@cromModel/@elements.4/@parts.0/@role" filler="//@cromModel/@elements.5" /> - </cromModel> -</ts:TestCase> diff --git a/org.framed.orm.transformation/epsilon/Group.etl b/org.framed.orm.transformation/epsilon/Group.etl index 0b0f93c2c67dc54d743713ef556cfc4eda05f928..1eab438295f80edf6be0069525cf9b4fa18d75e7 100644 --- a/org.framed.orm.transformation/epsilon/Group.etl +++ b/org.framed.orm.transformation/epsilon/Group.etl @@ -13,6 +13,8 @@ rule Group var e = elem.equivalent(); if(e.instanceOf(target!Relation)) { if(not(e==null)) t.getRelations().add(e); + } else if(e.isKindOf(Sequence)) { + for(ob in e) t.getRelations().add(ob); } else { if(not(e==null)) t.getElements().add(e); }