blob: 96528fceca3741885e5f18157e82fde9782411bf [file] [log] [blame]
Ernesto Posse8a4f2962015-05-12 13:28:46 -04001<?xml version="1.0" encoding="UTF-8"?>
2<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3 xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="common" nsURI="http://www.eclipse.org/papyrusrt/xtumlrt/common"
4 nsPrefix="common">
5 <eClassifiers xsi:type="ecore:EClass" name="ActionChain" eSuperTypes="#//NamedElement">
6 <eStructuralFeatures xsi:type="ecore:EReference" name="actions" upperBound="-1"
7 eType="#//ActionCode" containment="true"/>
8 </eClassifiers>
9 <eClassifiers xsi:type="ecore:EClass" name="ActionCode" eSuperTypes="#//NamedElement">
10 <eStructuralFeatures xsi:type="ecore:EAttribute" name="source" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
11 </eClassifiers>
12 <eClassifiers xsi:type="ecore:EClass" name="Annotation" eSuperTypes="#//NamedElement">
13 <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
14 eType="#//AnnotationParameter" containment="true"/>
15 </eClassifiers>
16 <eClassifiers xsi:type="ecore:EClass" name="AnnotationParameter" eSuperTypes="#//NamedElement">
17 <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
18 </eClassifiers>
19 <eClassifiers xsi:type="ecore:EClass" name="Attribute" eSuperTypes="#//MultiplicityElement #//NamedElement">
20 <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//Type"/>
21 <eStructuralFeatures xsi:type="ecore:EAttribute" name="visibility" eType="#//VisibilityKind"/>
22 <eStructuralFeatures xsi:type="ecore:EAttribute" name="default" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
23 <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
24 defaultValueLiteral="false"/>
25 </eClassifiers>
26 <eClassifiers xsi:type="ecore:EClass" name="Capsule" eSuperTypes="#//Entity #//RedefinableElement">
27 <eStructuralFeatures xsi:type="ecore:EReference" name="parts" upperBound="-1"
28 eType="#//CapsulePart" containment="true"/>
29 <eStructuralFeatures xsi:type="ecore:EReference" name="ports" upperBound="-1"
30 eType="#//Port" containment="true"/>
31 <eStructuralFeatures xsi:type="ecore:EReference" name="connectors" upperBound="-1"
32 eType="#//Connector" containment="true"/>
33 </eClassifiers>
34 <eClassifiers xsi:type="ecore:EEnum" name="CapsuleKind">
35 <eLiterals name="FIXED" literal="FIXED"/>
36 <eLiterals name="OPTIONAL" value="1"/>
37 <eLiterals name="PLUGIN" value="2"/>
38 </eClassifiers>
39 <eClassifiers xsi:type="ecore:EClass" name="CapsulePart" eSuperTypes="#//RedefinableElement #//MultiplicityElement">
40 <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//Capsule"/>
41 <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//CapsuleKind"/>
42 </eClassifiers>
43 <eClassifiers xsi:type="ecore:EClass" name="ChoicePoint" eSuperTypes="#//Pseudostate"/>
44 <eClassifiers xsi:type="ecore:EClass" name="CompositeState" eSuperTypes="#//State">
45 <eStructuralFeatures xsi:type="ecore:EReference" name="initial" eType="#//InitialPoint"
46 containment="true"/>
47 <eStructuralFeatures xsi:type="ecore:EReference" name="deepHistory" eType="#//DeepHistory"
48 containment="true"/>
49 <eStructuralFeatures xsi:type="ecore:EReference" name="junctionPoints" upperBound="-1"
50 eType="#//JunctionPoint" containment="true"/>
51 <eStructuralFeatures xsi:type="ecore:EReference" name="choicePoints" upperBound="-1"
52 eType="#//ChoicePoint" containment="true"/>
53 <eStructuralFeatures xsi:type="ecore:EReference" name="substates" upperBound="-1"
54 eType="#//State" containment="true"/>
55 <eStructuralFeatures xsi:type="ecore:EReference" name="transitions" upperBound="-1"
56 eType="#//Transition" containment="true"/>
57 <eStructuralFeatures xsi:type="ecore:EReference" name="vertices" upperBound="-1"
58 eType="#//Vertex" derived="true"/>
59 </eClassifiers>
60 <eClassifiers xsi:type="ecore:EClass" name="Connector" eSuperTypes="#//NamedElement">
61 <eStructuralFeatures xsi:type="ecore:EReference" name="ends" lowerBound="2" upperBound="2"
62 eType="#//ConnectorEnd" containment="true"/>
63 </eClassifiers>
64 <eClassifiers xsi:type="ecore:EClass" name="ConnectorEnd">
65 <eStructuralFeatures xsi:type="ecore:EReference" name="role" lowerBound="1" eType="#//Port"/>
66 <eStructuralFeatures xsi:type="ecore:EReference" name="partWithPort" eType="#//CapsulePart"/>
67 </eClassifiers>
68 <eClassifiers xsi:type="ecore:EClass" name="DeepHistory" eSuperTypes="#//Pseudostate"/>
69 <eClassifiers xsi:type="ecore:EEnum" name="DirectionKind">
70 <eLiterals name="IN"/>
71 <eLiterals name="OUT" value="1"/>
72 <eLiterals name="IN_OUT" value="2"/>
73 </eClassifiers>
74 <eClassifiers xsi:type="ecore:EClass" name="Entity" abstract="true" eSuperTypes="#//Type">
75 <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
76 eType="#//Attribute" containment="true"/>
77 <eStructuralFeatures xsi:type="ecore:EReference" name="operations" upperBound="-1"
78 eType="#//Operation" containment="true"/>
79 <eStructuralFeatures xsi:type="ecore:EReference" name="behaviour" eType="#//StateMachine"
80 containment="true"/>
81 </eClassifiers>
82 <eClassifiers xsi:type="ecore:EClass" name="EntryPoint" eSuperTypes="#//Pseudostate"/>
83 <eClassifiers xsi:type="ecore:EClass" name="ExitPoint" eSuperTypes="#//Pseudostate"/>
84 <eClassifiers xsi:type="ecore:EClass" name="Guard" eSuperTypes="#//NamedElement">
85 <eStructuralFeatures xsi:type="ecore:EReference" name="body" eType="#//ActionCode"
86 containment="true"/>
87 </eClassifiers>
88 <eClassifiers xsi:type="ecore:EClass" name="InitialPoint" eSuperTypes="#//Pseudostate"/>
89 <eClassifiers xsi:type="ecore:EClass" name="JunctionPoint" eSuperTypes="#//Pseudostate"/>
90 <eClassifiers xsi:type="ecore:EClass" name="Model" eSuperTypes="#//NamedElement">
91 <eStructuralFeatures xsi:type="ecore:EReference" name="localScopeTemporaryTypes"
92 upperBound="-1" eType="#//Type" containment="true">
93 <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
94 <details key="documentation" value="Validation: only non-Entity Types can be stored in this EReference"/>
95 </eAnnotations>
96 </eStructuralFeatures>
97 <eStructuralFeatures xsi:type="ecore:EReference" name="rootPackages" upperBound="-1"
98 eType="#//Package" containment="true"/>
99 <eStructuralFeatures xsi:type="ecore:EReference" name="topEntities" upperBound="-1"
100 eType="#//Entity" containment="true"/>
101 <eStructuralFeatures xsi:type="ecore:EReference" name="topProtocols" upperBound="-1"
102 eType="#//Protocol" containment="true"/>
Ernesto Possea7fde892015-05-15 16:52:36 -0400103 <eStructuralFeatures xsi:type="ecore:EReference" name="topTypedefinitions" upperBound="-1"
104 eType="#//TypeDefinition" containment="true"/>
Ernesto Posse8a4f2962015-05-12 13:28:46 -0400105 </eClassifiers>
106 <eClassifiers xsi:type="ecore:EClass" name="MultiplicityElement">
107 <eStructuralFeatures xsi:type="ecore:EAttribute" name="unique" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
108 <eStructuralFeatures xsi:type="ecore:EAttribute" name="ordered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
109 <eStructuralFeatures xsi:type="ecore:EAttribute" name="lowerBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
110 <eStructuralFeatures xsi:type="ecore:EAttribute" name="upperBound" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
111 </eClassifiers>
112 <eClassifiers xsi:type="ecore:EClass" name="NamedElement" abstract="true">
113 <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
114 <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
115 <eStructuralFeatures xsi:type="ecore:EReference" name="annotations" upperBound="-1"
116 eType="#//Annotation"/>
117 </eClassifiers>
118 <eClassifiers xsi:type="ecore:EClass" name="Operation" eSuperTypes="#//OperationSignature #//NamedElement">
119 <eStructuralFeatures xsi:type="ecore:EReference" name="body" lowerBound="1" eType="#//ActionCode"
120 containment="true"/>
121 </eClassifiers>
122 <eClassifiers xsi:type="ecore:EClass" name="OperationSignature" abstract="true">
123 <eStructuralFeatures xsi:type="ecore:EReference" name="returnType" lowerBound="1"
124 eType="#//Type"/>
125 <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
126 eType="#//Parameter" containment="true"/>
127 <eStructuralFeatures xsi:type="ecore:EAttribute" name="visibility" eType="#//VisibilityKind"/>
128 <eStructuralFeatures xsi:type="ecore:EAttribute" name="static" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
129 defaultValueLiteral="false"/>
130 </eClassifiers>
131 <eClassifiers xsi:type="ecore:EClass" name="Package" eSuperTypes="#//NamedElement">
132 <eStructuralFeatures xsi:type="ecore:EReference" name="protocols" upperBound="-1"
133 eType="#//Protocol" containment="true"/>
134 <eStructuralFeatures xsi:type="ecore:EReference" name="entities" upperBound="-1"
135 eType="#//Entity" containment="true"/>
136 <eStructuralFeatures xsi:type="ecore:EReference" name="typedefinitions" upperBound="-1"
137 eType="#//TypeDefinition" containment="true"/>
138 <eStructuralFeatures xsi:type="ecore:EReference" name="packages" upperBound="-1"
139 eType="#//Package" containment="true"/>
140 </eClassifiers>
141 <eClassifiers xsi:type="ecore:EClass" name="Parameter" eSuperTypes="#//MultiplicityElement #//NamedElement">
142 <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//Type"/>
143 <eStructuralFeatures xsi:type="ecore:EAttribute" name="direction" eType="#//DirectionKind"/>
144 </eClassifiers>
145 <eClassifiers xsi:type="ecore:EClass" name="Port" eSuperTypes="#//RedefinableElement #//MultiplicityElement">
146 <eStructuralFeatures xsi:type="ecore:EAttribute" name="conjugate" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
147 <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//Protocol"/>
148 <eStructuralFeatures xsi:type="ecore:EAttribute" name="visibility" eType="#//VisibilityKind"/>
149 </eClassifiers>
150 <eClassifiers xsi:type="ecore:EClass" name="PrimitiveType" eSuperTypes="#//Type #//NamedElement"/>
151 <eClassifiers xsi:type="ecore:EClass" name="Protocol" eSuperTypes="#//RedefinableElement">
152 <eStructuralFeatures xsi:type="ecore:EReference" name="protocolBehaviourFeatures"
153 upperBound="-1" eType="#//ProtocolBehaviourFeature" containment="true"/>
154 </eClassifiers>
155 <eClassifiers xsi:type="ecore:EClass" name="ProtocolBehaviourFeature" abstract="true"
156 eSuperTypes="#//NamedElement">
157 <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//ProtocolBehaviourFeatureKind"/>
158 </eClassifiers>
159 <eClassifiers xsi:type="ecore:EEnum" name="ProtocolBehaviourFeatureKind">
160 <eLiterals name="IN"/>
161 <eLiterals name="OUT" value="1"/>
162 <eLiterals name="INOUT" value="2"/>
163 </eClassifiers>
164 <eClassifiers xsi:type="ecore:EClass" name="Pseudostate" eSuperTypes="#//Vertex"/>
165 <eClassifiers xsi:type="ecore:EClass" name="RedefinableElement" abstract="true"
166 eSuperTypes="#//NamedElement">
167 <eStructuralFeatures xsi:type="ecore:EReference" name="redefines" eType="#//RedefinableElement"/>
168 </eClassifiers>
169 <eClassifiers xsi:type="ecore:EClass" name="Signal" eSuperTypes="#//ProtocolBehaviourFeature">
170 <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
171 eType="#//Parameter" containment="true"/>
172 </eClassifiers>
173 <eClassifiers xsi:type="ecore:EClass" name="SimpleState" eSuperTypes="#//State"/>
174 <eClassifiers xsi:type="ecore:EClass" name="State" eSuperTypes="#//Vertex #//RedefinableElement">
175 <eStructuralFeatures xsi:type="ecore:EReference" name="entryAction" eType="#//ActionCode"
176 containment="true"/>
177 <eStructuralFeatures xsi:type="ecore:EReference" name="exitAction" eType="#//ActionCode"
178 containment="true"/>
179 <eStructuralFeatures xsi:type="ecore:EReference" name="exitPoints" upperBound="-1"
180 eType="#//ExitPoint" containment="true"/>
181 <eStructuralFeatures xsi:type="ecore:EReference" name="entryPoints" upperBound="-1"
182 eType="#//EntryPoint" containment="true"/>
183 </eClassifiers>
184 <eClassifiers xsi:type="ecore:EClass" name="StateMachine" eSuperTypes="#//RedefinableElement">
185 <eStructuralFeatures xsi:type="ecore:EReference" name="top" lowerBound="1" eType="#//CompositeState"
186 containment="true"/>
187 </eClassifiers>
188 <eClassifiers xsi:type="ecore:EClass" name="StructMember" eSuperTypes="#//NamedElement">
189 <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//Type"/>
190 </eClassifiers>
191 <eClassifiers xsi:type="ecore:EClass" name="StructType" eSuperTypes="#//Type">
192 <eStructuralFeatures xsi:type="ecore:EReference" name="structMembers" upperBound="-1"
193 eType="#//StructMember" containment="true"/>
194 </eClassifiers>
195 <eClassifiers xsi:type="ecore:EClass" name="Transition" eSuperTypes="#//RedefinableElement">
196 <eStructuralFeatures xsi:type="ecore:EReference" name="sourceVertex" lowerBound="1"
197 eType="#//Vertex"/>
198 <eStructuralFeatures xsi:type="ecore:EReference" name="targetVertex" lowerBound="1"
199 eType="#//Vertex"/>
200 <eStructuralFeatures xsi:type="ecore:EReference" name="triggers" upperBound="-1"
201 eType="#//Trigger" containment="true"/>
202 <eStructuralFeatures xsi:type="ecore:EReference" name="guard" eType="#//Guard"
203 containment="true"/>
204 <eStructuralFeatures xsi:type="ecore:EReference" name="actionChain" eType="#//ActionChain"
205 containment="true"/>
206 </eClassifiers>
207 <eClassifiers xsi:type="ecore:EClass" name="Trigger" eSuperTypes="#//NamedElement"/>
208 <eClassifiers xsi:type="ecore:EClass" name="Type" abstract="true" interface="true"
209 eSuperTypes="#//NamedElement"/>
210 <eClassifiers xsi:type="ecore:EClass" name="TypeDefinition" eSuperTypes="#//NamedElement">
211 <eStructuralFeatures xsi:type="ecore:EReference" name="type" eType="#//Type"/>
212 </eClassifiers>
213 <eClassifiers xsi:type="ecore:EClass" name="TypeConstraint">
214 <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
215 <details key="documentation" value="TODO: requires further refinement to represent type constraints like interval (AGE: range:0..150)"/>
216 </eAnnotations>
217 </eClassifiers>
218 <eClassifiers xsi:type="ecore:EClass" name="Vertex" eSuperTypes="#//NamedElement">
219 <eStructuralFeatures xsi:type="ecore:EReference" name="incomingTransitions" upperBound="-1"
220 eType="#//Transition" derived="true"/>
221 <eStructuralFeatures xsi:type="ecore:EReference" name="outgoingTransitions" upperBound="-1"
222 eType="#//Transition" derived="true"/>
223 </eClassifiers>
224 <eClassifiers xsi:type="ecore:EEnum" name="VisibilityKind">
225 <eLiterals name="PUBLIC"/>
226 <eLiterals name="PROTECTED" value="1"/>
227 <eLiterals name="PRIVATE" value="2"/>
228 </eClassifiers>
229</ecore:EPackage>