rgen 0.9.0 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 5091748f0290a5b0c82cf66e3bf2fea91ac774f6
4
- data.tar.gz: db0663f172064272ed0bcd037e6715c12729429b
2
+ SHA256:
3
+ metadata.gz: 16727fb8ac509f1c0d992f9325059453b2a18c3060dcfaa580c73c5afbee80ef
4
+ data.tar.gz: 1558e56312461e98faafb733334af9cb995fc39facf6424a249158cd1542a024
5
5
  SHA512:
6
- metadata.gz: 1355aa9282e5c3a18a93b65788f4fb5a4f92b26bb5cf89fa50e7ec71bd63dad090af06b73e292e959a7750fe08d75a5e0e4a5f0010fe84bb162c6eed1af338d1
7
- data.tar.gz: 3f8755a969d35c22d4d8b3bcabeb6c75799b48b416d242a83530afbdc8b7364e682ba59750eddc375a454b450ef1ed5d32941951d7397430f4172d37aa1841a7
6
+ metadata.gz: 54e6edfead77fb9e6065af8b09d3ee6998ea9bf5171ada9c4846dfcebfd0802d97c7c0708caffd9568b0e50ee7bf36c42813bcc3e21a7b50285bf37ba0693b3b
7
+ data.tar.gz: 48065bb8017587ee8c83f22b15337f2e7b2133560d466a0f91b9efc42ed6859337cacd2cc80f2e07883cd0571d3cf298daa6912cd9e07a2d6a01bf97b3f68768
data/CHANGELOG CHANGED
@@ -225,4 +225,8 @@
225
225
 
226
226
  =0.9.0
227
227
 
228
- * Update to support Ruby 2.7, drop support for older Rubies
228
+ * Update to support Ruby 2.7, drop support for older Rubies
229
+
230
+ =0.9.1
231
+
232
+ * fixes in ecore model (make ENamedElement required; set default for EClass::{abstract, interface})
data/Project.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  name: rgen
2
2
  gemspec: rgen.gemspec
3
3
  git: https://github.com/mthiede/rgen.git
4
- version: 0.9.0
4
+ version: 0.9.1
5
5
  summary: Ruby Modelling and Generator Framework
6
6
  email: martin dot thiede at gmx de
7
7
  homepage: http://ruby-gen.org
@@ -25,7 +25,7 @@ module RGen
25
25
 
26
26
  class ENamedElement < EModelElement
27
27
  abstract
28
- has_attr 'name', String
28
+ has_attr 'name', String, :lowerBound => 1
29
29
  end
30
30
 
31
31
  class ETypedElement < ENamedElement
@@ -148,8 +148,8 @@ module RGen
148
148
  end
149
149
 
150
150
  class EClass < EClassifier
151
- has_attr 'abstract', Boolean
152
- has_attr 'interface', Boolean
151
+ has_attr 'abstract', Boolean, :defaultValueLiteral => "false"
152
+ has_attr 'interface', Boolean, :defaultValueLiteral => "false"
153
153
  has_one 'eIDAttribute', ECore::EAttribute, :derived=>true, :resolveProxies=>false
154
154
 
155
155
  has_many 'eAllAttributes', ECore::EAttribute, :derived=>true
@@ -134,8 +134,6 @@ def etypedelement(te)
134
134
  :unique => te.unique,
135
135
  :lowerBound => te.lowerBound,
136
136
  :upperBound => te.upperBound,
137
- :many => te.many,
138
- :required => te.required,
139
137
  :eType => {:_ref => te.eType ? ref_id(te.eType) : nil}
140
138
  })
141
139
  end
@@ -0,0 +1,71 @@
1
+ require 'rgen/metamodel_builder'
2
+
3
+ module HouseMetamodel
4
+ extend RGen::MetamodelBuilder::ModuleExtension
5
+ include RGen::MetamodelBuilder::DataTypes
6
+
7
+ SexEnum = Enum.new(:name => 'SexEnum', :literals =>[ :male, :female ])
8
+
9
+ class MeetingPlace < RGen::MetamodelBuilder::MMBase
10
+ annotation :source => "testmodel", :details => {'complexity' => '1', 'date_created' => '2006-07-12 08:40:46', 'date_modified' => '2006-07-12 08:44:02', 'ea_ntype' => '0', 'ea_stype' => 'Class', 'gentype' => 'Java', 'isSpecification' => 'false', 'package' => 'EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD', 'package_name' => 'HouseMetamodel', 'phase' => '1.0', 'status' => 'Proposed', 'style' => 'BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;', 'tagged' => '0', 'version' => '1.0'}
11
+ end
12
+
13
+ class Person < RGen::MetamodelBuilder::MMBase
14
+ annotation 'complexity' => '1', 'date_created' => '2006-06-27 08:34:23', 'date_modified' => '2006-06-27 08:34:26', 'ea_ntype' => '0', 'ea_stype' => 'Class', 'gentype' => 'Java', 'isSpecification' => 'false', 'package' => 'EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD', 'package_name' => 'HouseMetamodel', 'phase' => '1.0', 'status' => 'Proposed', 'style' => 'BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;', 'tagged' => '0', 'version' => '1.0'
15
+ has_attr 'sex', HouseMetamodel::SexEnum
16
+ has_attr 'id', Long
17
+ has_many_attr 'nicknames', String
18
+ end
19
+
20
+ class House < RGen::MetamodelBuilder::MMBase
21
+ annotation 'complexity' => '1', 'date_created' => '2005-09-16 19:52:18', 'date_modified' => '2006-02-28 08:29:19', 'ea_ntype' => '0', 'ea_stype' => 'Class', 'gentype' => 'Java', 'isSpecification' => 'false', 'package' => 'EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD', 'package_name' => 'HouseMetamodel', 'phase' => '1.0', 'status' => 'Proposed', 'stereotype' => 'dummy', 'style' => 'BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;', 'tagged' => '0', 'version' => '1.0'
22
+ has_attr 'size', Integer
23
+ has_attr 'module', String
24
+ has_attr 'address', String, :changeable => false do
25
+ annotation 'collection' => 'false', 'containment' => 'Not Specified', 'derived' => '0', 'duplicates' => '0', 'ea_guid' => '{A8DF581B-9AC6-4f75-AB48-8FAEDFC6E068}', 'lowerBound' => '1', 'ordered' => '0', 'position' => '0', 'styleex' => 'volatile=0;', 'type' => 'String', 'upperBound' => '1'
26
+ end
27
+ end
28
+
29
+
30
+ module Rooms
31
+ extend RGen::MetamodelBuilder::ModuleExtension
32
+ include RGen::MetamodelBuilder::DataTypes
33
+
34
+
35
+ class Room < RGen::MetamodelBuilder::MMBase
36
+ abstract
37
+ annotation 'complexity' => '1', 'date_created' => '2005-09-16 19:52:28', 'date_modified' => '2006-06-22 21:15:25', 'ea_ntype' => '0', 'ea_stype' => 'Class', 'gentype' => 'Java', 'isSpecification' => 'false', 'package' => 'EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08', 'package_name' => 'Rooms', 'phase' => '1.0', 'status' => 'Proposed', 'style' => 'BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;', 'tagged' => '0', 'version' => '1.0'
38
+ end
39
+
40
+ class Bathroom < Room
41
+ annotation 'complexity' => '1', 'date_created' => '2006-06-27 08:32:25', 'date_modified' => '2006-06-27 08:34:23', 'ea_ntype' => '0', 'ea_stype' => 'Class', 'gentype' => 'Java', 'isSpecification' => 'false', 'package' => 'EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08', 'package_name' => 'Rooms', 'phase' => '1.0', 'status' => 'Proposed', 'style' => 'BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;', 'tagged' => '0', 'version' => '1.0'
42
+ end
43
+
44
+ class Kitchen < RGen::MetamodelBuilder::MMMultiple(HouseMetamodel::MeetingPlace, Room)
45
+ annotation 'complexity' => '1', 'date_created' => '2005-11-30 19:26:13', 'date_modified' => '2006-06-22 21:15:34', 'ea_ntype' => '0', 'ea_stype' => 'Class', 'gentype' => 'Java', 'isSpecification' => 'false', 'package' => 'EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08', 'package_name' => 'Rooms', 'phase' => '1.0', 'status' => 'Proposed', 'style' => 'BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;', 'tagged' => '0', 'version' => '1.0'
46
+ end
47
+
48
+ end
49
+
50
+ module DependingOnRooms
51
+ extend RGen::MetamodelBuilder::ModuleExtension
52
+ include RGen::MetamodelBuilder::DataTypes
53
+
54
+
55
+ class RoomSub < HouseMetamodel::Rooms::Room
56
+ end
57
+
58
+ end
59
+ end
60
+
61
+ HouseMetamodel::Person.has_many 'home', HouseMetamodel::House do
62
+ annotation 'containment' => 'Unspecified'
63
+ end
64
+ HouseMetamodel::House.has_one 'bathroom', HouseMetamodel::Rooms::Bathroom, :lowerBound => 1, :transient => true
65
+ HouseMetamodel::House.one_to_one 'kitchen', HouseMetamodel::Rooms::Kitchen, 'house', :lowerBound => 1, :opposite_lowerBound => 1 do
66
+ annotation 'containment' => 'Unspecified'
67
+ opposite_annotation 'containment' => 'Unspecified'
68
+ end
69
+ HouseMetamodel::House.contains_many 'room', HouseMetamodel::Rooms::Room, 'house', :lowerBound => 1 do
70
+ opposite_annotation 'containment' => 'Unspecified'
71
+ end
@@ -0,0 +1,162 @@
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="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
5
+ <details key="date_created" value="2006-07-12 08:40:46" xsi:type="ecore:EStringToStringMapEntry"/>
6
+ <details key="date_modified" value="2006-07-12 08:44:02" xsi:type="ecore:EStringToStringMapEntry"/>
7
+ <details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
8
+ <details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
9
+ <details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
10
+ <details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
11
+ <details key="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" xsi:type="ecore:EStringToStringMapEntry"/>
12
+ <details key="package_name" value="HouseMetamodel" xsi:type="ecore:EStringToStringMapEntry"/>
13
+ <details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
14
+ <details key="status" value="Proposed" xsi:type="ecore:EStringToStringMapEntry"/>
15
+ <details key="style" value="BackColor=-1;BorderColor=-1;BorderWidth=-1;FontColor=-1;VSwimLanes=0;HSwimLanes=0;BorderStyle=0;" xsi:type="ecore:EStringToStringMapEntry"/>
16
+ <details key="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
17
+ <details key="version" value="1.0" 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="id" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong" xsi:type="ecore:EAttribute"/>
23
+ <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"/>
24
+ <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">
25
+ <eAnnotations xsi:type="ecore:EAnnotation">
26
+ <details key="containment" value="Unspecified" xsi:type="ecore:EStringToStringMapEntry"/>
27
+ </eAnnotations>
28
+ </eStructuralFeatures>
29
+ <eAnnotations xsi:type="ecore:EAnnotation">
30
+ <details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
31
+ <details key="date_created" value="2006-06-27 08:34:23" xsi:type="ecore:EStringToStringMapEntry"/>
32
+ <details key="date_modified" value="2006-06-27 08:34:26" xsi:type="ecore:EStringToStringMapEntry"/>
33
+ <details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
34
+ <details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
35
+ <details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
36
+ <details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
37
+ <details key="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" xsi:type="ecore:EStringToStringMapEntry"/>
38
+ <details key="package_name" value="HouseMetamodel" xsi:type="ecore:EStringToStringMapEntry"/>
39
+ <details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
40
+ <details key="status" value="Proposed" 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="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
43
+ <details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
44
+ </eAnnotations>
45
+ </eClassifiers>
46
+ <eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::House" name="House" xsi:type="ecore:EClass">
47
+ <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"/>
48
+ <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"/>
49
+ <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">
50
+ <eAnnotations xsi:type="ecore:EAnnotation">
51
+ <details key="collection" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
52
+ <details key="containment" value="Not Specified" xsi:type="ecore:EStringToStringMapEntry"/>
53
+ <details key="derived" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
54
+ <details key="duplicates" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
55
+ <details key="ea_guid" value="{A8DF581B-9AC6-4f75-AB48-8FAEDFC6E068}" xsi:type="ecore:EStringToStringMapEntry"/>
56
+ <details key="lowerBound" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
57
+ <details key="ordered" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
58
+ <details key="position" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
59
+ <details key="styleex" value="volatile=0;" xsi:type="ecore:EStringToStringMapEntry"/>
60
+ <details key="type" value="String" xsi:type="ecore:EStringToStringMapEntry"/>
61
+ <details key="upperBound" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
62
+ </eAnnotations>
63
+ </eStructuralFeatures>
64
+ <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"/>
65
+ <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">
66
+ <eAnnotations xsi:type="ecore:EAnnotation">
67
+ <details key="containment" value="Unspecified" xsi:type="ecore:EStringToStringMapEntry"/>
68
+ </eAnnotations>
69
+ </eStructuralFeatures>
70
+ <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"/>
71
+ <eAnnotations xsi:type="ecore:EAnnotation">
72
+ <details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
73
+ <details key="date_created" value="2005-09-16 19:52:18" xsi:type="ecore:EStringToStringMapEntry"/>
74
+ <details key="date_modified" value="2006-02-28 08:29:19" xsi:type="ecore:EStringToStringMapEntry"/>
75
+ <details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
76
+ <details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
77
+ <details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
78
+ <details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
79
+ <details key="package" value="EAPK_A1B83D59_CAE1_422c_BA5F_D3624D7156AD" xsi:type="ecore:EStringToStringMapEntry"/>
80
+ <details key="package_name" value="HouseMetamodel" xsi:type="ecore:EStringToStringMapEntry"/>
81
+ <details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
82
+ <details key="status" value="Proposed" xsi:type="ecore:EStringToStringMapEntry"/>
83
+ <details key="stereotype" value="dummy" 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="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
86
+ <details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
87
+ </eAnnotations>
88
+ </eClassifiers>
89
+ <eClassifiers instanceClassName="HouseMetamodel::SexEnum" name="SexEnum" xsi:type="ecore:EEnum">
90
+ <eLiterals name="male" xsi:type="ecore:EEnumLiteral"/>
91
+ <eLiterals name="female" xsi:type="ecore:EEnumLiteral"/>
92
+ </eClassifiers>
93
+ <eSubpackages name="Rooms" xsi:type="ecore:EPackage">
94
+ <eClassifiers abstract="true" interface="false" instanceClassName="HouseMetamodel::Rooms::Room" name="Room" eSubTypes="#//Rooms/Bathroom #//Rooms/Kitchen #//DependingOnRooms/RoomSub" xsi:type="ecore:EClass">
95
+ <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">
96
+ <eAnnotations xsi:type="ecore:EAnnotation">
97
+ <details key="containment" value="Unspecified" xsi:type="ecore:EStringToStringMapEntry"/>
98
+ </eAnnotations>
99
+ </eStructuralFeatures>
100
+ <eAnnotations xsi:type="ecore:EAnnotation">
101
+ <details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
102
+ <details key="date_created" value="2005-09-16 19:52:28" xsi:type="ecore:EStringToStringMapEntry"/>
103
+ <details key="date_modified" value="2006-06-22 21:15:25" xsi:type="ecore:EStringToStringMapEntry"/>
104
+ <details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
105
+ <details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
106
+ <details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
107
+ <details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
108
+ <details key="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" xsi:type="ecore:EStringToStringMapEntry"/>
109
+ <details key="package_name" value="Rooms" xsi:type="ecore:EStringToStringMapEntry"/>
110
+ <details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
111
+ <details key="status" value="Proposed" 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="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
114
+ <details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
115
+ </eAnnotations>
116
+ </eClassifiers>
117
+ <eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::Rooms::Bathroom" name="Bathroom" eSuperTypes="#//Rooms/Room" xsi:type="ecore:EClass">
118
+ <eAnnotations xsi:type="ecore:EAnnotation">
119
+ <details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
120
+ <details key="date_created" value="2006-06-27 08:32:25" xsi:type="ecore:EStringToStringMapEntry"/>
121
+ <details key="date_modified" value="2006-06-27 08:34:23" xsi:type="ecore:EStringToStringMapEntry"/>
122
+ <details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
123
+ <details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
124
+ <details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
125
+ <details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
126
+ <details key="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" xsi:type="ecore:EStringToStringMapEntry"/>
127
+ <details key="package_name" value="Rooms" xsi:type="ecore:EStringToStringMapEntry"/>
128
+ <details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
129
+ <details key="status" value="Proposed" 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="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
132
+ <details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
133
+ </eAnnotations>
134
+ </eClassifiers>
135
+ <eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::Rooms::Kitchen" name="Kitchen" eSuperTypes="#//MeetingPlace #//Rooms/Room" xsi:type="ecore:EClass">
136
+ <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">
137
+ <eAnnotations xsi:type="ecore:EAnnotation">
138
+ <details key="containment" value="Unspecified" xsi:type="ecore:EStringToStringMapEntry"/>
139
+ </eAnnotations>
140
+ </eStructuralFeatures>
141
+ <eAnnotations xsi:type="ecore:EAnnotation">
142
+ <details key="complexity" value="1" xsi:type="ecore:EStringToStringMapEntry"/>
143
+ <details key="date_created" value="2005-11-30 19:26:13" xsi:type="ecore:EStringToStringMapEntry"/>
144
+ <details key="date_modified" value="2006-06-22 21:15:34" xsi:type="ecore:EStringToStringMapEntry"/>
145
+ <details key="ea_ntype" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
146
+ <details key="ea_stype" value="Class" xsi:type="ecore:EStringToStringMapEntry"/>
147
+ <details key="gentype" value="Java" xsi:type="ecore:EStringToStringMapEntry"/>
148
+ <details key="isSpecification" value="false" xsi:type="ecore:EStringToStringMapEntry"/>
149
+ <details key="package" value="EAPK_F9D8C6E3_4DAD_4aa2_AD47_D0ABA4E93E08" xsi:type="ecore:EStringToStringMapEntry"/>
150
+ <details key="package_name" value="Rooms" xsi:type="ecore:EStringToStringMapEntry"/>
151
+ <details key="phase" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
152
+ <details key="status" value="Proposed" 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="tagged" value="0" xsi:type="ecore:EStringToStringMapEntry"/>
155
+ <details key="version" value="1.0" xsi:type="ecore:EStringToStringMapEntry"/>
156
+ </eAnnotations>
157
+ </eClassifiers>
158
+ </eSubpackages>
159
+ <eSubpackages name="DependingOnRooms" xsi:type="ecore:EPackage">
160
+ <eClassifiers abstract="false" interface="false" instanceClassName="HouseMetamodel::DependingOnRooms::RoomSub" name="RoomSub" eSuperTypes="#//Rooms/Room" xsi:type="ecore:EClass"/>
161
+ </eSubpackages>
162
+ </ecore:EPackage>
@@ -1,5 +1,5 @@
1
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
- <eClassifiers name="C1" xsi:type="ecore:EClass">
2
+ <eClassifiers abstract="false" interface="false" name="C1" xsi:type="ecore:EClass">
3
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
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
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#//ELong" xsi:type="ecore:EAttribute"/>
@@ -0,0 +1,9 @@
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
+ <eClassifiers abstract="false" interface="false" name="C1" xsi:type="ecore:EClass">
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#//ELong" 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#//EFloat" xsi:type="ecore:EAttribute"/>
7
+ <eStructuralFeatures iD="false" changeable="true" derived="false" transient="false" unsettable="false" volatile="false" lowerBound="0" ordered="true" unique="true" upperBound="1" name="a5" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" xsi:type="ecore:EAttribute"/>
8
+ </eClassifiers>
9
+ </ecore:EPackage>
@@ -0,0 +1,113 @@
1
+ ePackage "ECore", :eSuperPackage => "" do
2
+ eClass "EObject", :abstract => true, :instanceClassName => "RGen::ECore::EObject"
3
+ eClass "EModelElement", :abstract => true, :instanceClassName => "RGen::ECore::EModelElement" do
4
+ eReference "eAnnotations", :containment => true, :resolveProxies => false, :eOpposite => "EAnnotation.eModelElement", :upperBound => -1, :eType => "EAnnotation"
5
+ end
6
+ eClass "EAnnotation", :eSuperTypes => ["EModelElement", "EObject"], :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 => true, :eSuperTypes => ["EModelElement"], :instanceClassName => "RGen::ECore::ENamedElement" do
14
+ eAttribute "name", :lowerBound => 1, :eType => ""
15
+ end
16
+ eClass "ETypedElement", :abstract => true, :eSuperTypes => ["ENamedElement"], :instanceClassName => "RGen::ECore::ETypedElement" do
17
+ eAttribute "lowerBound", :defaultValueLiteral => "0", :eType => ""
18
+ eAttribute "ordered", :defaultValueLiteral => "true", :eType => ""
19
+ eAttribute "unique", :defaultValueLiteral => "true", :eType => ""
20
+ eAttribute "upperBound", :defaultValueLiteral => "1", :eType => ""
21
+ eAttribute "many", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
22
+ eAttribute "required", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
23
+ eReference "eType", :eType => "EClassifier"
24
+ end
25
+ eClass "EStructuralFeature", :abstract => true, :eSuperTypes => ["ETypedElement"], :instanceClassName => "RGen::ECore::EStructuralFeature" do
26
+ eAttribute "changeable", :defaultValueLiteral => "true", :eType => ""
27
+ eAttribute "defaultValue", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
28
+ eAttribute "defaultValueLiteral", :eType => ""
29
+ eAttribute "derived", :defaultValueLiteral => "false", :eType => ""
30
+ eAttribute "transient", :defaultValueLiteral => "false", :eType => ""
31
+ eAttribute "unsettable", :defaultValueLiteral => "false", :eType => ""
32
+ eAttribute "volatile", :defaultValueLiteral => "false", :eType => ""
33
+ eReference "eContainingClass", :eOpposite => "EClass.eStructuralFeatures", :eType => "EClass"
34
+ end
35
+ eClass "EAttribute", :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"
38
+ end
39
+ eClass "EClassifier", :abstract => true, :eSuperTypes => ["ENamedElement"], :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"
44
+ end
45
+ eClass "EDataType", :eSuperTypes => ["EClassifier"], :instanceClassName => "RGen::ECore::EDataType" do
46
+ eAttribute "serializable", :eType => ""
47
+ end
48
+ eClass "EGenericType", :eSuperTypes => ["EDataType"], :instanceClassName => "RGen::ECore::EGenericType" do
49
+ eReference "eClassifier", :eType => "EDataType"
50
+ eReference "eParameter", :eOpposite => "EParameter.eGenericType", :eType => "EParameter"
51
+ eReference "eTypeArguments", :containment => true, :eOpposite => "ETypeArgument.eGenericType", :upperBound => -1, :eType => "ETypeArgument"
52
+ end
53
+ eClass "ETypeArgument", :eSuperTypes => ["EModelElement"], :instanceClassName => "RGen::ECore::ETypeArgument" do
54
+ eReference "eClassifier", :eType => "EDataType"
55
+ eReference "eGenericType", :eOpposite => "EGenericType.eTypeArguments", :eType => "EGenericType"
56
+ end
57
+ eClass "EEnum", :eSuperTypes => ["EDataType"], :instanceClassName => "RGen::ECore::EEnum" do
58
+ eReference "eLiterals", :containment => true, :resolveProxies => false, :eOpposite => "EEnumLiteral.eEnum", :upperBound => -1, :eType => "EEnumLiteral"
59
+ end
60
+ eClass "EEnumLiteral", :eSuperTypes => ["ENamedElement"], :instanceClassName => "RGen::ECore::EEnumLiteral" do
61
+ eAttribute "literal", :eType => ""
62
+ eAttribute "value", :eType => ""
63
+ eReference "eEnum", :eOpposite => "EEnum.eLiterals", :eType => "EEnum"
64
+ end
65
+ eClass "EFactory", :eSuperTypes => ["EModelElement"], :instanceClassName => "RGen::ECore::EFactory" do
66
+ eReference "ePackage", :resolveProxies => false, :eOpposite => "EPackage.eFactoryInstance", :transient => true, :lowerBound => 1, :eType => "EPackage"
67
+ end
68
+ eClass "EOperation", :eSuperTypes => ["ETypedElement"], :instanceClassName => "RGen::ECore::EOperation" do
69
+ eReference "eContainingClass", :eOpposite => "EClass.eOperations", :eType => "EClass"
70
+ eReference "eParameters", :containment => true, :resolveProxies => false, :eOpposite => "EParameter.eOperation", :upperBound => -1, :eType => "EParameter"
71
+ eReference "eExceptions", :upperBound => -1, :eType => "EClassifier"
72
+ end
73
+ eClass "EPackage", :eSuperTypes => ["ENamedElement"], :instanceClassName => "RGen::ECore::EPackage" do
74
+ eAttribute "nsPrefix", :eType => ""
75
+ eAttribute "nsURI", :eType => ""
76
+ eReference "eClassifiers", :containment => true, :eOpposite => "EClassifier.ePackage", :upperBound => -1, :eType => "EClassifier"
77
+ eReference "eSubpackages", :containment => true, :eOpposite => "eSuperPackage", :upperBound => -1, :eType => "EPackage"
78
+ eReference "eSuperPackage", :eOpposite => "eSubpackages", :eType => "EPackage"
79
+ eReference "eFactoryInstance", :eOpposite => "EFactory.ePackage", :eType => "EFactory"
80
+ end
81
+ eClass "EParameter", :eSuperTypes => ["ETypedElement"], :instanceClassName => "RGen::ECore::EParameter" do
82
+ eReference "eOperation", :eOpposite => "EOperation.eParameters", :eType => "EOperation"
83
+ eReference "eGenericType", :containment => true, :eOpposite => "EGenericType.eParameter", :eType => "EGenericType"
84
+ end
85
+ eClass "EReference", :eSuperTypes => ["EStructuralFeature"], :instanceClassName => "RGen::ECore::EReference" do
86
+ eAttribute "container", :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => ""
87
+ eAttribute "containment", :defaultValueLiteral => "false", :eType => ""
88
+ eAttribute "resolveProxies", :defaultValueLiteral => "true", :eType => ""
89
+ eReference "eOpposite", :eType => "EReference"
90
+ eReference "eReferenceType", :changeable => false, :derived => true, :transient => true, :volatile => true, :lowerBound => 1, :eType => "EClass"
91
+ end
92
+ eClass "EStringToStringMapEntry", :instanceClassName => "RGen::ECore::EStringToStringMapEntry" do
93
+ eAttribute "key", :eType => ""
94
+ eAttribute "value", :eType => ""
95
+ end
96
+ eClass "EClass", :eSuperTypes => ["EClassifier"], :instanceClassName => "RGen::ECore::EClass" do
97
+ eAttribute "abstract", :defaultValueLiteral => "false", :eType => ""
98
+ eAttribute "interface", :defaultValueLiteral => "false", :eType => ""
99
+ eReference "eIDAttribute", :resolveProxies => false, :changeable => false, :derived => true, :transient => true, :volatile => true, :eType => "EAttribute"
100
+ eReference "eAllAttributes", :changeable => false, :derived => true, :transient => true, :volatile => true, :upperBound => -1, :eType => "EAttribute"
101
+ eReference "eAllContainments", :changeable => false, :derived => true, :transient => true, :volatile => true, :upperBound => -1, :eType => "EReference"
102
+ eReference "eAllOperations", :changeable => false, :derived => true, :transient => true, :volatile => true, :upperBound => -1, :eType => "EOperation"
103
+ eReference "eAllReferences", :changeable => false, :derived => true, :transient => true, :volatile => true, :upperBound => -1, :eType => "EReference"
104
+ eReference "eAllStructuralFeatures", :changeable => false, :derived => true, :transient => true, :volatile => true, :upperBound => -1, :eType => "EStructuralFeature"
105
+ eReference "eAllSuperTypes", :changeable => false, :derived => true, :transient => true, :volatile => true, :upperBound => -1, :eType => "EClass"
106
+ eReference "eAttributes", :changeable => false, :derived => true, :transient => true, :volatile => true, :upperBound => -1, :eType => "EAttribute"
107
+ eReference "eReferences", :changeable => false, :derived => true, :transient => true, :volatile => true, :upperBound => -1, :eType => "EReference"
108
+ eReference "eOperations", :containment => true, :resolveProxies => false, :eOpposite => "EOperation.eContainingClass", :upperBound => -1, :eType => "EOperation"
109
+ eReference "eStructuralFeatures", :containment => true, :resolveProxies => false, :eOpposite => "EStructuralFeature.eContainingClass", :upperBound => -1, :eType => "EStructuralFeature"
110
+ eReference "eSuperTypes", :eOpposite => "eSubTypes", :upperBound => -1, :eType => "EClass"
111
+ eReference "eSubTypes", :eOpposite => "eSuperTypes", :upperBound => -1, :eType => "EClass"
112
+ end
113
+ end
@@ -0,0 +1,2 @@
1
+ first line (unix) |
2
+ second line (windows) |
@@ -0,0 +1,2 @@
1
+ first line |
2
+ second line |
@@ -0,0 +1,2 @@
1
+ first line |
2
+ second line |