rgen 0.5.2 → 0.5.3
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +6 -1
- data/Rakefile +2 -2
- data/lib/rgen/ecore/ecore_transformer.rb +5 -4
- data/lib/rgen/instantiator/json_parser.rb +7 -2
- data/lib/rgen/instantiator/json_parser.y +5 -0
- data/lib/rgen/metamodel_builder.rb +1 -0
- data/lib/rgen/metamodel_builder/builder_extensions.rb +1 -0
- data/lib/rgen/metamodel_builder/constant_order_helper.rb +89 -0
- data/lib/rgen/metamodel_builder/data_types.rb +2 -1
- data/lib/rgen/metamodel_builder/module_extension.rb +10 -1
- data/lib/rgen/serializer/json_serializer.rb +2 -1
- data/test/json_test.rb +12 -4
- data/test/metamodel_order_test.rb +125 -0
- data/test/metamodel_roundtrip_test/TestModel_Regenerated.rb +39 -37
- data/test/metamodel_roundtrip_test/houseMetamodel_Regenerated.ecore +129 -129
- data/test/metamodel_roundtrip_test/using_builtin_types_serialized.ecore +5 -5
- data/test/model_builder/ecore_internal.rb +56 -56
- data/test/rgen_test.rb +1 -0
- data/test/testmodel/ea_testmodel_regenerated.xml +584 -584
- metadata +16 -5
@@ -1,161 +1,161 @@
|
|
1
|
-
<ecore:EPackage xmi:version="2.0"
|
2
|
-
<eClassifiers
|
3
|
-
<
|
4
|
-
|
5
|
-
|
6
|
-
<
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
<eStructuralFeatures
|
1
|
+
<ecore:EPackage name="HouseMetamodel" xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore">
|
2
|
+
<eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::MeetingPlace" name="MeetingPlace" eSubTypes="#//Rooms/Kitchen" xsi:type="ecore:EClass">
|
3
|
+
<eAnnotations source="testmodel" xsi:type="ecore:EAnnotation">
|
4
|
+
<details key="status" value="Proposed" xsi:type="ecore:EStringToStringMapEntry"/>
|
5
|
+
<details key="date_created" value="2006-07-12 08:40:46" xsi:type="ecore:EStringToStringMapEntry"/>
|
6
|
+
<details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
|
7
|
+
<details key="date_modified" value="2006-07-12 08:44:02" xsi:type="ecore:EStringToStringMapEntry"/>
|
8
|
+
<details key="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
9
|
+
<details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
10
|
+
<details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
11
|
+
<details key="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" xsi:type="ecore:EStringToStringMapEntry"/>
|
12
|
+
<details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
|
13
|
+
<details key="package_name" value="HouseMetamodel" xsi:type="ecore:EStringToStringMapEntry"/>
|
14
|
+
<details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
|
15
|
+
<details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
16
|
+
<details key="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" xsi:type="ecore:EStringToStringMapEntry"/>
|
17
|
+
<details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
|
18
|
+
</eAnnotations>
|
19
|
+
</eClassifiers>
|
20
|
+
<eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::Person" name="Person" xsi:type="ecore:EClass">
|
21
|
+
<eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="sex" eType="#//SexEnum" xsi:type="ecore:EAttribute"/>
|
22
|
+
<eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="-1" name="nicknames" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" xsi:type="ecore:EAttribute"/>
|
23
|
+
<eStructuralFeatures containment="false" resolveProxies="true" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="-1" name="home" eType="#//House" xsi:type="ecore:EReference">
|
22
24
|
<eAnnotations xsi:type="ecore:EAnnotation">
|
23
|
-
<details
|
25
|
+
<details key="containment" value="Unspecified" xsi:type="ecore:EStringToStringMapEntry"/>
|
24
26
|
</eAnnotations>
|
25
27
|
</eStructuralFeatures>
|
26
|
-
<eStructuralFeatures name="room" derived="false" containment="true" transient="false" changeable="true" resolveProxies="true" eOpposite="#//Rooms/Room/house" unsettable="false" xsi:type="ecore:EReference" upperBound="-1" ordered="true" volatile="false" lowerBound="1" eType="#//Rooms/Room" unique="true"/>
|
27
28
|
<eAnnotations xsi:type="ecore:EAnnotation">
|
28
|
-
<details
|
29
|
-
<details
|
30
|
-
<details
|
31
|
-
<details
|
32
|
-
<details
|
33
|
-
<details
|
34
|
-
<details
|
35
|
-
<details
|
36
|
-
<details
|
37
|
-
<details
|
38
|
-
<details
|
39
|
-
<details
|
40
|
-
<details
|
41
|
-
<details
|
42
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="Java" key="gentype"/>
|
29
|
+
<details key="status" value="Proposed" xsi:type="ecore:EStringToStringMapEntry"/>
|
30
|
+
<details key="date_created" value="2006-06-27 08:34:23" xsi:type="ecore:EStringToStringMapEntry"/>
|
31
|
+
<details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
|
32
|
+
<details key="date_modified" value="2006-06-27 08:34:26" xsi:type="ecore:EStringToStringMapEntry"/>
|
33
|
+
<details key="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
34
|
+
<details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
35
|
+
<details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
36
|
+
<details key="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" xsi:type="ecore:EStringToStringMapEntry"/>
|
37
|
+
<details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
|
38
|
+
<details key="package_name" value="HouseMetamodel" xsi:type="ecore:EStringToStringMapEntry"/>
|
39
|
+
<details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
|
40
|
+
<details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
41
|
+
<details key="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" xsi:type="ecore:EStringToStringMapEntry"/>
|
42
|
+
<details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
|
43
43
|
</eAnnotations>
|
44
44
|
</eClassifiers>
|
45
|
-
<eClassifiers
|
46
|
-
<eStructuralFeatures
|
47
|
-
<eStructuralFeatures
|
48
|
-
<eStructuralFeatures
|
45
|
+
<eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::House" name="House" xsi:type="ecore:EClass">
|
46
|
+
<eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="size" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" xsi:type="ecore:EAttribute"/>
|
47
|
+
<eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="module" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" xsi:type="ecore:EAttribute"/>
|
48
|
+
<eStructuralFeatures iD="false" changeable="false" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="address" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" xsi:type="ecore:EAttribute">
|
49
|
+
<eAnnotations xsi:type="ecore:EAnnotation">
|
50
|
+
<details key="derived" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
51
|
+
<details key="containment" value="Not Specified" xsi:type="ecore:EStringToStringMapEntry"/>
|
52
|
+
<details key="ea_guid" value="{A8DF581B-9AC6-4f75-AB48-8FAEDFC6E068}" xsi:type="ecore:EStringToStringMapEntry"/>
|
53
|
+
<details key="duplicates" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
54
|
+
<details key="collection" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
|
55
|
+
<details key="type" value="String" xsi:type="ecore:EStringToStringMapEntry"/>
|
56
|
+
<details key="styleex" value="volatile=0;" xsi:type="ecore:EStringToStringMapEntry"/>
|
57
|
+
<details key="upperBound" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
|
58
|
+
<details key="ordered" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
59
|
+
<details key="lowerBound" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
|
60
|
+
<details key="position" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
61
|
+
</eAnnotations>
|
62
|
+
</eStructuralFeatures>
|
63
|
+
<eStructuralFeatures containment="false" resolveProxies="true" changeable="true" derived="false" transient="true" unsettable="false" volatile="false" lowerBound="1" ordered="true" unique="true" upperBound="1" name="bathroom" eType="#//Rooms/Bathroom" xsi:type="ecore:EReference"/>
|
64
|
+
<eStructuralFeatures containment="false" resolveProxies="true" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="1" ordered="true" unique="true" upperBound="1" name="kitchen" eOpposite="#//Rooms/Kitchen/house" eType="#//Rooms/Kitchen" xsi:type="ecore:EReference">
|
49
65
|
<eAnnotations xsi:type="ecore:EAnnotation">
|
50
|
-
<details
|
66
|
+
<details key="containment" value="Unspecified" xsi:type="ecore:EStringToStringMapEntry"/>
|
51
67
|
</eAnnotations>
|
52
68
|
</eStructuralFeatures>
|
69
|
+
<eStructuralFeatures containment="true" resolveProxies="true" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="1" ordered="true" unique="true" upperBound="-1" name="room" eOpposite="#//Rooms/Room/house" eType="#//Rooms/Room" xsi:type="ecore:EReference"/>
|
53
70
|
<eAnnotations xsi:type="ecore:EAnnotation">
|
54
|
-
<details
|
55
|
-
<details
|
56
|
-
<details
|
57
|
-
<details
|
58
|
-
<details
|
59
|
-
<details
|
60
|
-
<details
|
61
|
-
<details
|
62
|
-
<details
|
63
|
-
<details
|
64
|
-
<details
|
65
|
-
<details
|
66
|
-
<details
|
67
|
-
<details
|
71
|
+
<details key="stereotype" value="dummy" xsi:type="ecore:EStringToStringMapEntry"/>
|
72
|
+
<details key="status" value="Proposed" xsi:type="ecore:EStringToStringMapEntry"/>
|
73
|
+
<details key="date_created" value="2005-09-16 19:52:18" xsi:type="ecore:EStringToStringMapEntry"/>
|
74
|
+
<details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
|
75
|
+
<details key="date_modified" value="2006-02-28 08:29:19" xsi:type="ecore:EStringToStringMapEntry"/>
|
76
|
+
<details key="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
77
|
+
<details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
78
|
+
<details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
79
|
+
<details key="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" xsi:type="ecore:EStringToStringMapEntry"/>
|
80
|
+
<details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
|
81
|
+
<details key="package_name" value="HouseMetamodel" xsi:type="ecore:EStringToStringMapEntry"/>
|
82
|
+
<details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
|
83
|
+
<details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
84
|
+
<details key="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" xsi:type="ecore:EStringToStringMapEntry"/>
|
85
|
+
<details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
|
68
86
|
</eAnnotations>
|
69
87
|
</eClassifiers>
|
70
|
-
<eClassifiers
|
88
|
+
<eClassifiers instanceClassName="HouseMetamodel::SexEnum" name="SexEnum" xsi:type="ecore:EEnum">
|
71
89
|
<eLiterals name="male" xsi:type="ecore:EEnumLiteral"/>
|
72
90
|
<eLiterals name="female" xsi:type="ecore:EEnumLiteral"/>
|
73
91
|
</eClassifiers>
|
74
|
-
<eClassifiers name="MeetingPlace" abstract="false" instanceClassName="HouseMetamodel::MeetingPlace" interface="false" xsi:type="ecore:EClass" eSubTypes="#//Rooms/Kitchen">
|
75
|
-
<eAnnotations xsi:type="ecore:EAnnotation" source="testmodel">
|
76
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="Proposed" key="status"/>
|
77
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="2006-07-12 08:40:46" key="date_created"/>
|
78
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="Class" key="ea_stype"/>
|
79
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="2006-07-12 08:44:02" key="date_modified"/>
|
80
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="0" key="tagged"/>
|
81
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="0" key="ea_ntype"/>
|
82
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="1.0" key="version"/>
|
83
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" key="package"/>
|
84
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="false" key="isSpecification"/>
|
85
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="HouseMetamodel" key="package_name"/>
|
86
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="1" key="complexity"/>
|
87
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="1.0" key="phase"/>
|
88
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" key="style"/>
|
89
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="Java" key="gentype"/>
|
90
|
-
</eAnnotations>
|
91
|
-
</eClassifiers>
|
92
92
|
<eSubpackages name="Rooms" xsi:type="ecore:EPackage">
|
93
|
-
<eClassifiers
|
94
|
-
<
|
95
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="Proposed" key="status"/>
|
96
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="2006-06-27 08:32:25" key="date_created"/>
|
97
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="Class" key="ea_stype"/>
|
98
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="2006-06-27 08:34:23" key="date_modified"/>
|
99
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="0" key="tagged"/>
|
100
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="0" key="ea_ntype"/>
|
101
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="1.0" key="version"/>
|
102
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" key="package"/>
|
103
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="false" key="isSpecification"/>
|
104
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="Rooms" key="package_name"/>
|
105
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="1" key="complexity"/>
|
106
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="1.0" key="phase"/>
|
107
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" key="style"/>
|
108
|
-
<details xsi:type="ecore:EStringToStringMapEntry" value="Java" key="gentype"/>
|
109
|
-
</eAnnotations>
|
110
|
-
</eClassifiers>
|
111
|
-
<eClassifiers name="Room" abstract="true" instanceClassName="HouseMetamodel::Rooms::Room" interface="false" xsi:type="ecore:EClass" eSubTypes="#//Rooms/Bathroom #//Rooms/Kitchen #//DependingOnRooms/RoomSub">
|
112
|
-
<eStructuralFeatures name="house" derived="false" containment="false" transient="false" changeable="true" resolveProxies="true" eOpposite="#//House/room" unsettable="false" xsi:type="ecore:EReference" upperBound="1" ordered="true" volatile="false" lowerBound="0" eType="#//House" unique="true">
|
93
|
+
<eClassifiers abstract="true" interface="false" instanceClassName="HouseMetamodel::Rooms::Room" name="Room" eSubTypes="#//Rooms/Bathroom #//Rooms/Kitchen #//DependingOnRooms/RoomSub" xsi:type="ecore:EClass">
|
94
|
+
<eStructuralFeatures containment="false" resolveProxies="true" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="house" eOpposite="#//House/room" eType="#//House" xsi:type="ecore:EReference">
|
113
95
|
<eAnnotations xsi:type="ecore:EAnnotation">
|
114
|
-
<details
|
96
|
+
<details key="containment" value="Unspecified" xsi:type="ecore:EStringToStringMapEntry"/>
|
115
97
|
</eAnnotations>
|
116
98
|
</eStructuralFeatures>
|
117
99
|
<eAnnotations xsi:type="ecore:EAnnotation">
|
118
|
-
<details
|
119
|
-
<details
|
120
|
-
<details
|
121
|
-
<details
|
122
|
-
<details
|
123
|
-
<details
|
124
|
-
<details
|
125
|
-
<details
|
126
|
-
<details
|
127
|
-
<details
|
128
|
-
<details
|
129
|
-
<details
|
130
|
-
<details
|
131
|
-
<details
|
100
|
+
<details key="status" value="Proposed" xsi:type="ecore:EStringToStringMapEntry"/>
|
101
|
+
<details key="date_created" value="2005-09-16 19:52:28" xsi:type="ecore:EStringToStringMapEntry"/>
|
102
|
+
<details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
|
103
|
+
<details key="date_modified" value="2006-06-22 21:15:25" xsi:type="ecore:EStringToStringMapEntry"/>
|
104
|
+
<details key="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
105
|
+
<details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
106
|
+
<details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
107
|
+
<details key="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" xsi:type="ecore:EStringToStringMapEntry"/>
|
108
|
+
<details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
|
109
|
+
<details key="package_name" value="Rooms" xsi:type="ecore:EStringToStringMapEntry"/>
|
110
|
+
<details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
|
111
|
+
<details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
112
|
+
<details key="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" xsi:type="ecore:EStringToStringMapEntry"/>
|
113
|
+
<details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
|
114
|
+
</eAnnotations>
|
115
|
+
</eClassifiers>
|
116
|
+
<eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::Rooms::Bathroom" name="Bathroom" eSuperTypes="#//Rooms/Room" xsi:type="ecore:EClass">
|
117
|
+
<eAnnotations xsi:type="ecore:EAnnotation">
|
118
|
+
<details key="status" value="Proposed" xsi:type="ecore:EStringToStringMapEntry"/>
|
119
|
+
<details key="date_created" value="2006-06-27 08:32:25" xsi:type="ecore:EStringToStringMapEntry"/>
|
120
|
+
<details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
|
121
|
+
<details key="date_modified" value="2006-06-27 08:34:23" xsi:type="ecore:EStringToStringMapEntry"/>
|
122
|
+
<details key="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
123
|
+
<details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
124
|
+
<details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
125
|
+
<details key="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" xsi:type="ecore:EStringToStringMapEntry"/>
|
126
|
+
<details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
|
127
|
+
<details key="package_name" value="Rooms" xsi:type="ecore:EStringToStringMapEntry"/>
|
128
|
+
<details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
|
129
|
+
<details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
130
|
+
<details key="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" xsi:type="ecore:EStringToStringMapEntry"/>
|
131
|
+
<details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
|
132
132
|
</eAnnotations>
|
133
133
|
</eClassifiers>
|
134
|
-
<eClassifiers
|
135
|
-
<eStructuralFeatures
|
134
|
+
<eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::Rooms::Kitchen" name="Kitchen" eSuperTypes="#//MeetingPlace #//Rooms/Room" xsi:type="ecore:EClass">
|
135
|
+
<eStructuralFeatures containment="false" resolveProxies="true" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="1" ordered="true" unique="true" upperBound="1" name="house" eOpposite="#//House/kitchen" eType="#//House" xsi:type="ecore:EReference">
|
136
136
|
<eAnnotations xsi:type="ecore:EAnnotation">
|
137
|
-
<details
|
137
|
+
<details key="containment" value="Unspecified" xsi:type="ecore:EStringToStringMapEntry"/>
|
138
138
|
</eAnnotations>
|
139
139
|
</eStructuralFeatures>
|
140
140
|
<eAnnotations xsi:type="ecore:EAnnotation">
|
141
|
-
<details
|
142
|
-
<details
|
143
|
-
<details
|
144
|
-
<details
|
145
|
-
<details
|
146
|
-
<details
|
147
|
-
<details
|
148
|
-
<details
|
149
|
-
<details
|
150
|
-
<details
|
151
|
-
<details
|
152
|
-
<details
|
153
|
-
<details
|
154
|
-
<details
|
141
|
+
<details key="status" value="Proposed" xsi:type="ecore:EStringToStringMapEntry"/>
|
142
|
+
<details key="date_created" value="2005-11-30 19:26:13" xsi:type="ecore:EStringToStringMapEntry"/>
|
143
|
+
<details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
|
144
|
+
<details key="date_modified" value="2006-06-22 21:15:34" xsi:type="ecore:EStringToStringMapEntry"/>
|
145
|
+
<details key="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
146
|
+
<details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
|
147
|
+
<details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
148
|
+
<details key="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" xsi:type="ecore:EStringToStringMapEntry"/>
|
149
|
+
<details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
|
150
|
+
<details key="package_name" value="Rooms" xsi:type="ecore:EStringToStringMapEntry"/>
|
151
|
+
<details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
|
152
|
+
<details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
|
153
|
+
<details key="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" xsi:type="ecore:EStringToStringMapEntry"/>
|
154
|
+
<details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
|
155
155
|
</eAnnotations>
|
156
156
|
</eClassifiers>
|
157
157
|
</eSubpackages>
|
158
158
|
<eSubpackages name="DependingOnRooms" xsi:type="ecore:EPackage">
|
159
|
-
<eClassifiers
|
159
|
+
<eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::DependingOnRooms::RoomSub" name="RoomSub" eSuperTypes="#//Rooms/Room" xsi:type="ecore:EClass"/>
|
160
160
|
</eSubpackages>
|
161
161
|
</ecore:EPackage>
|
@@ -1,8 +1,8 @@
|
|
1
|
-
<ecore:EPackage xmi:version="2.0"
|
1
|
+
<ecore:EPackage name="P1" xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore">
|
2
2
|
<eClassifiers name="C1" xsi:type="ecore:EClass">
|
3
|
-
<eStructuralFeatures
|
4
|
-
<eStructuralFeatures
|
5
|
-
<eStructuralFeatures
|
6
|
-
<eStructuralFeatures
|
3
|
+
<eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString" xsi:type="ecore:EAttribute"/>
|
4
|
+
<eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a2" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" xsi:type="ecore:EAttribute"/>
|
5
|
+
<eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a3" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat" xsi:type="ecore:EAttribute"/>
|
6
|
+
<eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a4" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" xsi:type="ecore:EAttribute"/>
|
7
7
|
</eClassifiers>
|
8
8
|
</ecore:EPackage>
|
@@ -1,5 +1,19 @@
|
|
1
1
|
ePackage "ECore", :eSuperPackage => "" do
|
2
|
-
eClass "
|
2
|
+
eClass "EObject", :abstract => false, :interface => false, :eSubTypes => ["EAnnotation"], :instanceClassName => "RGen::ECore::EObject"
|
3
|
+
eClass "EModelElement", :abstract => false, :interface => false, :eSubTypes => ["EAnnotation", "ENamedElement", "EFactory"], :instanceClassName => "RGen::ECore::EModelElement" do
|
4
|
+
eReference "eAnnotations", :containment => true, :resolveProxies => false, :eOpposite => "EAnnotation.eModelElement", :upperBound => -1, :eType => "EAnnotation"
|
5
|
+
end
|
6
|
+
eClass "EAnnotation", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EAnnotation" do
|
7
|
+
eAttribute "source", :eType => ""
|
8
|
+
eReference "eModelElement", :eOpposite => "EModelElement.eAnnotations", :eType => "EModelElement"
|
9
|
+
eReference "details", :containment => true, :resolveProxies => false, :upperBound => -1, :eType => "EStringToStringMapEntry"
|
10
|
+
eReference "contents", :containment => true, :resolveProxies => false, :upperBound => -1, :eType => "EObject"
|
11
|
+
eReference "references", :upperBound => -1, :eType => "EObject"
|
12
|
+
end
|
13
|
+
eClass "ENamedElement", :abstract => false, :interface => false, :eSubTypes => ["ETypedElement", "EEnumLiteral", "EPackage"], :instanceClassName => "RGen::ECore::ENamedElement" do
|
14
|
+
eAttribute "name", :eType => ""
|
15
|
+
end
|
16
|
+
eClass "ETypedElement", :abstract => false, :interface => false, :eSubTypes => ["EParameter"], :instanceClassName => "RGen::ECore::ETypedElement" do
|
3
17
|
eAttribute "lowerBound", :defaultValueLiteral => "0", :eType => ""
|
4
18
|
eAttribute "ordered", :defaultValueLiteral => "true", :eType => ""
|
5
19
|
eAttribute "unique", :defaultValueLiteral => "true", :eType => ""
|
@@ -8,18 +22,6 @@ ePackage "ECore", :eSuperPackage => "" do
|
|
8
22
|
eAttribute "required", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
|
9
23
|
eReference "eType", :eType => "EClassifier"
|
10
24
|
end
|
11
|
-
eClass "EObject", :abstract => false, :interface => false, :eSubTypes => ["EAnnotation"], :instanceClassName => "RGen::ECore::EObject"
|
12
|
-
eClass "EAttribute", :abstract => false, :interface => false, :eSuperTypes => ["EStructuralFeature"], :instanceClassName => "RGen::ECore::EAttribute" do
|
13
|
-
eAttribute "iD", :defaultValueLiteral => "false", :eType => ""
|
14
|
-
eReference "eAttributeType", :changeable => false, :derived => true, :transient => true, :volatile => true, :lowerBound => 1, :eType => "EDataType"
|
15
|
-
end
|
16
|
-
eClass "EReference", :abstract => false, :interface => false, :eSuperTypes => ["EStructuralFeature"], :instanceClassName => "RGen::ECore::EReference" do
|
17
|
-
eAttribute "container", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
|
18
|
-
eAttribute "containment", :defaultValueLiteral => "false", :eType => ""
|
19
|
-
eAttribute "resolveProxies", :defaultValueLiteral => "true", :eType => ""
|
20
|
-
eReference "eOpposite", :eType => "EReference"
|
21
|
-
eReference "eReferenceType", :changeable => false, :derived => true, :transient => true, :volatile => true, :lowerBound => 1, :eType => "EClass"
|
22
|
-
end
|
23
25
|
eClass "EStructuralFeature", :abstract => false, :interface => false, :eSuperTypes => ["ETypedElement"], :instanceClassName => "RGen::ECore::EStructuralFeature" do
|
24
26
|
eAttribute "changeable", :defaultValueLiteral => "true", :eType => ""
|
25
27
|
eAttribute "defaultValue", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
|
@@ -30,29 +32,56 @@ ePackage "ECore", :eSuperPackage => "" do
|
|
30
32
|
eAttribute "volatile", :defaultValueLiteral => "false", :eType => ""
|
31
33
|
eReference "eContainingClass", :eOpposite => "EClass.eStructuralFeatures", :eType => "EClass"
|
32
34
|
end
|
33
|
-
eClass "
|
34
|
-
|
35
|
+
eClass "EAttribute", :abstract => false, :interface => false, :eSuperTypes => ["EStructuralFeature"], :instanceClassName => "RGen::ECore::EAttribute" do
|
36
|
+
eAttribute "iD", :defaultValueLiteral => "false", :eType => ""
|
37
|
+
eReference "eAttributeType", :changeable => false, :derived => true, :transient => true, :volatile => true, :lowerBound => 1, :eType => "EDataType"
|
35
38
|
end
|
36
|
-
eClass "
|
37
|
-
eAttribute "
|
39
|
+
eClass "EClassifier", :abstract => false, :interface => false, :eSuperTypes => ["ENamedElement"], :eSubTypes => ["EDataType"], :instanceClassName => "RGen::ECore::EClassifier" do
|
40
|
+
eAttribute "defaultValue", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
|
41
|
+
eAttribute "instanceClass", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
|
42
|
+
eAttribute "instanceClassName", :eType => ""
|
43
|
+
eReference "ePackage", :eOpposite => "EPackage.eClassifiers", :eType => "EPackage"
|
38
44
|
end
|
39
|
-
eClass "
|
40
|
-
|
45
|
+
eClass "EDataType", :abstract => false, :interface => false, :eSubTypes => ["EEnum"], :instanceClassName => "RGen::ECore::EDataType" do
|
46
|
+
eAttribute "serializable", :eType => ""
|
41
47
|
end
|
42
|
-
eClass "
|
43
|
-
eReference "
|
48
|
+
eClass "EEnum", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EEnum" do
|
49
|
+
eReference "eLiterals", :containment => true, :resolveProxies => false, :eOpposite => "EEnumLiteral.eEnum", :upperBound => -1, :eType => "EEnumLiteral"
|
44
50
|
end
|
45
51
|
eClass "EEnumLiteral", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EEnumLiteral" do
|
46
52
|
eAttribute "literal", :eType => ""
|
47
53
|
eAttribute "value", :eType => ""
|
48
54
|
eReference "eEnum", :eOpposite => "EEnum.eLiterals", :eType => "EEnum"
|
49
55
|
end
|
50
|
-
eClass "
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
eReference "
|
55
|
-
eReference "
|
56
|
+
eClass "EFactory", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EFactory" do
|
57
|
+
eReference "ePackage", :resolveProxies => false, :eOpposite => "EPackage.eFactoryInstance", :transient => true, :lowerBound => 1, :eType => "EPackage"
|
58
|
+
end
|
59
|
+
eClass "EOperation", :abstract => false, :interface => false, :eSuperTypes => ["ETypedElement"], :instanceClassName => "RGen::ECore::EOperation" do
|
60
|
+
eReference "eContainingClass", :eOpposite => "EClass.eOperations", :eType => "EClass"
|
61
|
+
eReference "eParameters", :containment => true, :resolveProxies => false, :eOpposite => "EParameter.eOperation", :upperBound => -1, :eType => "EParameter"
|
62
|
+
eReference "eExceptions", :upperBound => -1, :eType => "EClassifier"
|
63
|
+
end
|
64
|
+
eClass "EPackage", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EPackage" do
|
65
|
+
eAttribute "nsPrefix", :eType => ""
|
66
|
+
eAttribute "nsURI", :eType => ""
|
67
|
+
eReference "eClassifiers", :containment => true, :eOpposite => "EClassifier.ePackage", :upperBound => -1, :eType => "EClassifier"
|
68
|
+
eReference "eSubpackages", :containment => true, :eOpposite => "eSuperPackage", :upperBound => -1, :eType => "EPackage"
|
69
|
+
eReference "eSuperPackage", :eOpposite => "eSubpackages", :eType => "EPackage"
|
70
|
+
eReference "eFactoryInstance", :eOpposite => "EFactory.ePackage", :eType => "EFactory"
|
71
|
+
end
|
72
|
+
eClass "EParameter", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EParameter" do
|
73
|
+
eReference "eOperation", :eOpposite => "EOperation.eParameters", :eType => "EOperation"
|
74
|
+
end
|
75
|
+
eClass "EReference", :abstract => false, :interface => false, :eSuperTypes => ["EStructuralFeature"], :instanceClassName => "RGen::ECore::EReference" do
|
76
|
+
eAttribute "container", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
|
77
|
+
eAttribute "containment", :defaultValueLiteral => "false", :eType => ""
|
78
|
+
eAttribute "resolveProxies", :defaultValueLiteral => "true", :eType => ""
|
79
|
+
eReference "eOpposite", :eType => "EReference"
|
80
|
+
eReference "eReferenceType", :changeable => false, :derived => true, :transient => true, :volatile => true, :lowerBound => 1, :eType => "EClass"
|
81
|
+
end
|
82
|
+
eClass "EStringToStringMapEntry", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EStringToStringMapEntry" do
|
83
|
+
eAttribute "key", :eType => ""
|
84
|
+
eAttribute "value", :eType => ""
|
56
85
|
end
|
57
86
|
eClass "EClass", :abstract => false, :interface => false, :eSuperTypes => ["EClassifier"], :instanceClassName => "RGen::ECore::EClass" do
|
58
87
|
eAttribute "abstract", :eType => ""
|
@@ -71,33 +100,4 @@ ePackage "ECore", :eSuperPackage => "" do
|
|
71
100
|
eReference "eSuperTypes", :eOpposite => "eSubTypes", :upperBound => -1, :eType => "EClass"
|
72
101
|
eReference "eSubTypes", :eOpposite => "eSuperTypes", :upperBound => -1, :eType => "EClass"
|
73
102
|
end
|
74
|
-
eClass "EPackage", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EPackage" do
|
75
|
-
eAttribute "nsPrefix", :eType => ""
|
76
|
-
eAttribute "nsURI", :eType => ""
|
77
|
-
eReference "eClassifiers", :containment => true, :eOpposite => "EClassifier.ePackage", :upperBound => -1, :eType => "EClassifier"
|
78
|
-
eReference "eSubpackages", :containment => true, :eOpposite => "eSuperPackage", :upperBound => -1, :eType => "EPackage"
|
79
|
-
eReference "eSuperPackage", :eOpposite => "eSubpackages", :eType => "EPackage"
|
80
|
-
eReference "eFactoryInstance", :eOpposite => "EFactory.ePackage", :eType => "EFactory"
|
81
|
-
end
|
82
|
-
eClass "EDataType", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EDataType" do
|
83
|
-
eAttribute "serializable", :eType => ""
|
84
|
-
end
|
85
|
-
eClass "EModelElement", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EModelElement" do
|
86
|
-
eReference "eAnnotations", :containment => true, :resolveProxies => false, :eOpposite => "EAnnotation.eModelElement", :upperBound => -1, :eType => "EAnnotation"
|
87
|
-
end
|
88
|
-
eClass "EClassifier", :abstract => false, :interface => false, :eSuperTypes => ["ENamedElement"], :eSubTypes => ["EDataType"], :instanceClassName => "RGen::ECore::EClassifier" do
|
89
|
-
eAttribute "defaultValue", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
|
90
|
-
eAttribute "instanceClass", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
|
91
|
-
eAttribute "instanceClassName", :eType => ""
|
92
|
-
eReference "ePackage", :eOpposite => "EPackage.eClassifiers", :eType => "EPackage"
|
93
|
-
end
|
94
|
-
eClass "EStringToStringMapEntry", :abstract => false, :interface => false, :instanceClassName => "RGen::ECore::EStringToStringMapEntry" do
|
95
|
-
eAttribute "key", :eType => ""
|
96
|
-
eAttribute "value", :eType => ""
|
97
|
-
end
|
98
|
-
eClass "EOperation", :abstract => false, :interface => false, :eSuperTypes => ["ETypedElement"], :instanceClassName => "RGen::ECore::EOperation" do
|
99
|
-
eReference "eContainingClass", :eOpposite => "EClass.eOperations", :eType => "EClass"
|
100
|
-
eReference "eParameters", :containment => true, :resolveProxies => false, :eOpposite => "EParameter.eOperation", :upperBound => -1, :eType => "EParameter"
|
101
|
-
eReference "eExceptions", :upperBound => -1, :eType => "EClassifier"
|
102
|
-
end
|
103
103
|
end
|