source: branches/xtext-MDT/org.modelica.emf/model/OpenModelicaAbstactSyntax.ecore @ 548

Last change on this file since 548 was 544, checked in by nasko, 15 years ago

MDT-XText initial import 2

File size: 59.5 KB
Line 
1<?xml version="1.0" encoding="UTF-8"?>
2<ecore:EPackage xmi:version="2.0"
3    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="Absyn"
5    nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/" nsPrefix="Absyn">
6  <eSubpackages name="Program" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Program"
7      nsPrefix="Program">
8    <eClassifiers xsi:type="ecore:EClass" name="uProgram" abstract="true"/>
9    <eClassifiers xsi:type="ecore:EClass" name="PROGRAM" eSuperTypes="#//Program/uProgram">
10      <eStructuralFeatures xsi:type="ecore:EReference" name="classes" upperBound="-1"
11          eType="#//Class/uClass" containment="true"/>
12      <eStructuralFeatures xsi:type="ecore:EReference" name="withinClause" lowerBound="1"
13          eType="#//Within/uWithin" containment="true"/>
14      <eStructuralFeatures xsi:type="ecore:EReference" name="globalBuildTimes" eType="#//TimeStamp/uTimeStamp"
15          containment="true"/>
16    </eClassifiers>
17  </eSubpackages>
18  <eSubpackages name="Within" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Within"
19      nsPrefix="Within">
20    <eClassifiers xsi:type="ecore:EClass" name="uWithin" abstract="true"/>
21    <eClassifiers xsi:type="ecore:EClass" name="WITHIN" eSuperTypes="#//Within/uWithin">
22      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
23          eType="#//Path/uPath" containment="true"/>
24    </eClassifiers>
25    <eClassifiers xsi:type="ecore:EClass" name="TOP" eSuperTypes="#//Within/uWithin"/>
26  </eSubpackages>
27  <eSubpackages name="Class" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Class"
28      nsPrefix="Class">
29    <eClassifiers xsi:type="ecore:EClass" name="uClass" abstract="true"/>
30    <eClassifiers xsi:type="ecore:EClass" name="CLASS" eSuperTypes="#//Class/uClass">
31      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
32      <eStructuralFeatures xsi:type="ecore:EAttribute" name="partialPrefix" lowerBound="1"
33          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
34          defaultValueLiteral="false"/>
35      <eStructuralFeatures xsi:type="ecore:EAttribute" name="finalPrefix" lowerBound="1"
36          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
37          defaultValueLiteral="false"/>
38      <eStructuralFeatures xsi:type="ecore:EAttribute" name="encapsulatedPrefix" lowerBound="1"
39          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
40          defaultValueLiteral="false"/>
41      <eStructuralFeatures xsi:type="ecore:EReference" name="body" lowerBound="1"
42          eType="#//ClassDef/uClassDef" containment="true"/>
43      <eStructuralFeatures xsi:type="ecore:EReference" name="restriction" lowerBound="1"
44          eType="#//Restriction/uRestriction" containment="true"/>
45    </eClassifiers>
46  </eSubpackages>
47  <eSubpackages name="ClassDef" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ClassDef"
48      nsPrefix="ClassDef">
49    <eClassifiers xsi:type="ecore:EClass" name="uClassDef" abstract="true"/>
50    <eClassifiers xsi:type="ecore:EClass" name="PARTS" eSuperTypes="#//ClassDef/uClassDef">
51      <eStructuralFeatures xsi:type="ecore:EReference" name="classParts" upperBound="-1"
52          eType="#//ClassPart/uClassPart" containment="true"/>
53      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
54          containment="true"/>
55      <eStructuralFeatures xsi:type="ecore:EAttribute" name="nameEnd" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
56    </eClassifiers>
57    <eClassifiers xsi:type="ecore:EClass" name="DERIVED" eSuperTypes="#//ClassDef/uClassDef">
58      <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" lowerBound="1"
59          eType="#//ElementAttributes/uElementAttributes" containment="true"/>
60      <eStructuralFeatures xsi:type="ecore:EReference" name="arguments" upperBound="-1"
61          eType="#//ElementArg/uElementArg" containment="true"/>
62      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
63          containment="true"/>
64      <eStructuralFeatures xsi:type="ecore:EReference" name="typeSpec" lowerBound="1"
65          eType="#//TypeSpec/uTypeSpec" containment="true"/>
66    </eClassifiers>
67    <eClassifiers xsi:type="ecore:EClass" name="ENUMERATION" eSuperTypes="#//ClassDef/uClassDef">
68      <eStructuralFeatures xsi:type="ecore:EReference" name="enumLiterals" lowerBound="1"
69          eType="#//EnumDef/uEnumDef" containment="true"/>
70      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
71          containment="true"/>
72    </eClassifiers>
73    <eClassifiers xsi:type="ecore:EClass" name="OVERLOAD" eSuperTypes="#//ClassDef/uClassDef">
74      <eStructuralFeatures xsi:type="ecore:EReference" name="functionNames" upperBound="-1"
75          eType="#//Path/uPath" containment="true"/>
76      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
77          containment="true"/>
78    </eClassifiers>
79    <eClassifiers xsi:type="ecore:EClass" name="CLASS_EXTENDS" eSuperTypes="#//ClassDef/uClassDef">
80      <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseClassName" lowerBound="1"
81          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
82      <eStructuralFeatures xsi:type="ecore:EReference" name="modifications" upperBound="-1"
83          eType="#//ElementArg/uElementArg" containment="true"/>
84      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
85          containment="true"/>
86      <eStructuralFeatures xsi:type="ecore:EReference" name="parts" upperBound="-1"
87          eType="#//ClassPart/uClassPart" containment="true"/>
88      <eStructuralFeatures xsi:type="ecore:EAttribute" name="nameEnd" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
89    </eClassifiers>
90    <eClassifiers xsi:type="ecore:EClass" name="PDER" eSuperTypes="#//ClassDef/uClassDef">
91      <eStructuralFeatures xsi:type="ecore:EReference" name="functionName" lowerBound="1"
92          eType="#//Path/uPath" containment="true"/>
93      <eStructuralFeatures xsi:type="ecore:EAttribute" name="vars" upperBound="-1"
94          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
95    </eClassifiers>
96  </eSubpackages>
97  <eSubpackages name="EnumDef" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/EnumDef"
98      nsPrefix="EnumDef">
99    <eClassifiers xsi:type="ecore:EClass" name="uEnumDef" abstract="true"/>
100    <eClassifiers xsi:type="ecore:EClass" name="ENUMLITERALS" eSuperTypes="#//EnumDef/uEnumDef">
101      <eStructuralFeatures xsi:type="ecore:EReference" name="enumLiterals" upperBound="-1"
102          eType="#//EnumLiteral/uEnumLiteral" containment="true"/>
103    </eClassifiers>
104    <eClassifiers xsi:type="ecore:EClass" name="ENUM_COLON" eSuperTypes="#//EnumDef/uEnumDef"/>
105  </eSubpackages>
106  <eSubpackages name="EnumLiteral" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/EnumLiteral"
107      nsPrefix="EnumLiteral">
108    <eClassifiers xsi:type="ecore:EClass" name="uEnumLiteral" abstract="true"/>
109    <eClassifiers xsi:type="ecore:EClass" name="ENUMLITERAL" eSuperTypes="#//EnumLiteral/uEnumLiteral">
110      <eStructuralFeatures xsi:type="ecore:EAttribute" name="literal" lowerBound="1"
111          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
112      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
113          containment="true"/>
114    </eClassifiers>
115  </eSubpackages>
116  <eSubpackages name="ClassPart" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ClassPart"
117      nsPrefix="ClassPart">
118    <eClassifiers xsi:type="ecore:EClass" name="uClassPart" abstract="true"/>
119    <eClassifiers xsi:type="ecore:EClass" name="PUBLIC" eSuperTypes="#//ClassPart/uClassPart">
120      <eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1"
121          eType="#//ElementItem/uElementItem" containment="true"/>
122    </eClassifiers>
123    <eClassifiers xsi:type="ecore:EClass" name="PROTECTED" eSuperTypes="#//ClassPart/uClassPart">
124      <eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1"
125          eType="#//ElementItem/uElementItem" containment="true"/>
126    </eClassifiers>
127    <eClassifiers xsi:type="ecore:EClass" name="EQUATIONS" eSuperTypes="#//ClassPart/uClassPart">
128      <eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1"
129          eType="#//EquationItem/uEquationItem" containment="true"/>
130    </eClassifiers>
131    <eClassifiers xsi:type="ecore:EClass" name="INITIALEQUATIONS" eSuperTypes="#//ClassPart/uClassPart">
132      <eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1"
133          eType="#//EquationItem/uEquationItem"/>
134    </eClassifiers>
135    <eClassifiers xsi:type="ecore:EClass" name="ALGORITHMS" eSuperTypes="#//ClassPart/uClassPart">
136      <eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1"
137          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
138    </eClassifiers>
139    <eClassifiers xsi:type="ecore:EClass" name="INITIALALGORITHMS" eSuperTypes="#//ClassPart/uClassPart">
140      <eStructuralFeatures xsi:type="ecore:EReference" name="contents" upperBound="-1"
141          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
142    </eClassifiers>
143    <eClassifiers xsi:type="ecore:EClass" name="EXTERNAL" eSuperTypes="#//ClassPart/uClassPart">
144      <eStructuralFeatures xsi:type="ecore:EReference" name="externalDecl" lowerBound="1"
145          eType="#//ExternalDecl/uExternalDecl" containment="true"/>
146      <eStructuralFeatures xsi:type="ecore:EReference" name="annotationNode" eType="#//Annotation/uAnnotation"
147          containment="true"/>
148    </eClassifiers>
149  </eSubpackages>
150  <eSubpackages name="ElementItem" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ElementItem"
151      nsPrefix="ElementItem">
152    <eClassifiers xsi:type="ecore:EClass" name="uElementItem" abstract="true"/>
153    <eClassifiers xsi:type="ecore:EClass" name="ELEMENTITEM" eSuperTypes="#//ElementItem/uElementItem">
154      <eStructuralFeatures xsi:type="ecore:EReference" name="element" lowerBound="1"
155          eType="#//Element/uElement" containment="true"/>
156    </eClassifiers>
157    <eClassifiers xsi:type="ecore:EClass" name="ANNOTATIONITEM" eSuperTypes="#//ElementItem/uElementItem">
158      <eStructuralFeatures xsi:type="ecore:EReference" name="annotation_" lowerBound="1"
159          eType="#//Annotation/uAnnotation" containment="true"/>
160    </eClassifiers>
161  </eSubpackages>
162  <eSubpackages name="Element" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Element"
163      nsPrefix="Element">
164    <eClassifiers xsi:type="ecore:EClass" name="uElement" abstract="true"/>
165    <eClassifiers xsi:type="ecore:EClass" name="ELEMENT" eSuperTypes="#//Element/uElement">
166      <eStructuralFeatures xsi:type="ecore:EAttribute" name="finalPrefix" lowerBound="1"
167          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
168      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
169          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
170          defaultValueLiteral="FIXME"/>
171      <eStructuralFeatures xsi:type="ecore:EReference" name="specification" lowerBound="1"
172          eType="#//ElementSpec/uElementSpec" containment="true"/>
173      <eStructuralFeatures xsi:type="ecore:EReference" name="constrainClass" eType="#//ConstrainClass/uConstrainClass"
174          containment="true"/>
175      <eStructuralFeatures xsi:type="ecore:EReference" name="redeclareKeywords" eType="#//RedeclareKeywords/uRedeclareKeywords"
176          containment="true"/>
177      <eStructuralFeatures xsi:type="ecore:EReference" name="innerOuter" lowerBound="1"
178          eType="#//InnerOuter/uInnerOuter" containment="true"/>
179    </eClassifiers>
180    <eClassifiers xsi:type="ecore:EClass" name="TEXT" eSuperTypes="#//Element/uElement">
181      <eStructuralFeatures xsi:type="ecore:EAttribute" name="optName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
182      <eStructuralFeatures xsi:type="ecore:EAttribute" name="string" lowerBound="1"
183          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
184    </eClassifiers>
185    <eClassifiers xsi:type="ecore:EClass" name="DEFINEUNIT" eSuperTypes="#//Element/uElement">
186      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
187          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
188      <eStructuralFeatures xsi:type="ecore:EReference" name="args" upperBound="-1"
189          eType="#//NamedArg/uNamedArg" containment="true"/>
190    </eClassifiers>
191  </eSubpackages>
192  <eSubpackages name="ConstrainClass" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ConstrainClass"
193      nsPrefix="ConstrainClass">
194    <eClassifiers xsi:type="ecore:EClass" name="uConstrainClass" abstract="true"/>
195    <eClassifiers xsi:type="ecore:EClass" name="CONSTRAINCLASS" eSuperTypes="#//ConstrainClass/uConstrainClass">
196      <eStructuralFeatures xsi:type="ecore:EReference" name="elementSpec" lowerBound="1"
197          eType="#//ElementSpec/uElementSpec" containment="true"/>
198      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
199          containment="true"/>
200    </eClassifiers>
201  </eSubpackages>
202  <eSubpackages name="ElementSpec" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ElementSpec"
203      nsPrefix="ElementSpec">
204    <eClassifiers xsi:type="ecore:EClass" name="uElementSpec" abstract="true"/>
205    <eClassifiers xsi:type="ecore:EClass" name="CLASSDEF" eSuperTypes="#//ElementSpec/uElementSpec">
206      <eStructuralFeatures xsi:type="ecore:EAttribute" name="replaceable_" lowerBound="1"
207          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
208      <eStructuralFeatures xsi:type="ecore:EReference" name="class_" lowerBound="1"
209          eType="#//Class/uClass" containment="true"/>
210    </eClassifiers>
211    <eClassifiers xsi:type="ecore:EClass" name="EXTENDS" eSuperTypes="#//ElementSpec/uElementSpec">
212      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
213          eType="#//Path/uPath" containment="true"/>
214      <eStructuralFeatures xsi:type="ecore:EReference" name="elementArg" upperBound="-1"
215          eType="#//ElementArg/uElementArg" containment="true"/>
216      <eStructuralFeatures xsi:type="ecore:EReference" name="annotationOpt" eType="#//Annotation/uAnnotation"
217          containment="true"/>
218    </eClassifiers>
219    <eClassifiers xsi:type="ecore:EClass" name="IMPORT" eSuperTypes="#//ElementSpec/uElementSpec">
220      <eStructuralFeatures xsi:type="ecore:EReference" name="import_" lowerBound="1"
221          eType="#//Import/uImport" containment="true"/>
222      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
223          containment="true"/>
224    </eClassifiers>
225    <eClassifiers xsi:type="ecore:EClass" name="COMPONENTS" eSuperTypes="#//ElementSpec/uElementSpec">
226      <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" lowerBound="1"
227          eType="#//ElementAttributes/uElementAttributes" containment="true"/>
228      <eStructuralFeatures xsi:type="ecore:EReference" name="components" upperBound="-1"
229          eType="#//ComponentItem/uComponentItem" containment="true"/>
230      <eStructuralFeatures xsi:type="ecore:EReference" name="typeSpec" lowerBound="1"
231          eType="#//TypeSpec/uTypeSpec" containment="true"/>
232    </eClassifiers>
233  </eSubpackages>
234  <eSubpackages name="InnerOuter" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/InnerOuter"
235      nsPrefix="InnerOuter">
236    <eClassifiers xsi:type="ecore:EEnum" name="OBSOLETE_InnerOuter">
237      <eLiterals name="UNSPECIFIED" value="3"/>
238      <eLiterals name="INNER"/>
239      <eLiterals name="OUTER" value="1"/>
240      <eLiterals name="INNEROUTER" value="2"/>
241    </eClassifiers>
242    <eClassifiers xsi:type="ecore:EClass" name="uInnerOuter" abstract="true"/>
243    <eClassifiers xsi:type="ecore:EClass" name="INNER" eSuperTypes="#//InnerOuter/uInnerOuter"/>
244    <eClassifiers xsi:type="ecore:EClass" name="OUTER" eSuperTypes="#//InnerOuter/uInnerOuter"/>
245    <eClassifiers xsi:type="ecore:EClass" name="INNEROUTER" eSuperTypes="#//InnerOuter/uInnerOuter"/>
246    <eClassifiers xsi:type="ecore:EClass" name="UNSPECIFIED" eSuperTypes="#//InnerOuter/uInnerOuter"/>
247  </eSubpackages>
248  <eSubpackages name="Import" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Import"
249      nsPrefix="Import">
250    <eClassifiers xsi:type="ecore:EClass" name="uImport" abstract="true"/>
251    <eClassifiers xsi:type="ecore:EClass" name="NAMED_IMPORT" eSuperTypes="#//Import/uImport">
252      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
253          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
254      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
255          eType="#//Path/uPath" containment="true"/>
256    </eClassifiers>
257    <eClassifiers xsi:type="ecore:EClass" name="QUAL_IMPORT" eSuperTypes="#//Import/uImport">
258      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
259          eType="#//Path/uPath" containment="true"/>
260    </eClassifiers>
261    <eClassifiers xsi:type="ecore:EClass" name="UNQUAL_IMPORT" eSuperTypes="#//Import/uImport">
262      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
263          eType="#//Path/uPath" containment="true"/>
264    </eClassifiers>
265  </eSubpackages>
266  <eSubpackages name="ComponentItem" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ComponentItem"
267      nsPrefix="ComponentItem">
268    <eClassifiers xsi:type="ecore:EClass" name="uComponentItem" abstract="true"/>
269    <eClassifiers xsi:type="ecore:EClass" name="COMPONENTITEM" eSuperTypes="#//ComponentItem/uComponentItem">
270      <eStructuralFeatures xsi:type="ecore:EReference" name="component" lowerBound="1"
271          eType="#//Component/uComponent" containment="true"/>
272      <eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="#//ComponentCondition/ComponentCondition"
273          containment="true"/>
274      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
275          containment="true"/>
276    </eClassifiers>
277  </eSubpackages>
278  <eSubpackages name="ComponentCondition" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ComponentCondition"
279      nsPrefix="ComponentCondition">
280    <eClassifiers xsi:type="ecore:EClass" name="ComponentCondition">
281      <eStructuralFeatures xsi:type="ecore:EReference" name="condition" lowerBound="1"
282          eType="#//Exp/uExp" containment="true"/>
283    </eClassifiers>
284  </eSubpackages>
285  <eSubpackages name="Component" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Component"
286      nsPrefix="Component">
287    <eClassifiers xsi:type="ecore:EClass" name="uComponent" abstract="true"/>
288    <eClassifiers xsi:type="ecore:EClass" name="COMPONENT" eSuperTypes="#//Component/uComponent">
289      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
290          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
291      <eStructuralFeatures xsi:type="ecore:EReference" name="arrayDim" lowerBound="1"
292          eType="#//ArrayDim/ArrayDim" containment="true"/>
293      <eStructuralFeatures xsi:type="ecore:EReference" name="modification" eType="#//Modifications/uModification"
294          containment="true"/>
295    </eClassifiers>
296  </eSubpackages>
297  <eSubpackages name="EquationItem" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/EquationItem"
298      nsPrefix="EquationItem">
299    <eClassifiers xsi:type="ecore:EClass" name="uEquationItem" abstract="true"/>
300    <eClassifiers xsi:type="ecore:EClass" name="EQUATIONITEM" eSuperTypes="#//EquationItem/uEquationItem">
301      <eStructuralFeatures xsi:type="ecore:EReference" name="equation_" lowerBound="1"
302          eType="#//Equation/uEquation" containment="true"/>
303      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"/>
304    </eClassifiers>
305    <eClassifiers xsi:type="ecore:EClass" name="EQUATIONITEMANN" eSuperTypes="#//EquationItem/uEquationItem">
306      <eStructuralFeatures xsi:type="ecore:EReference" name="annotation_" lowerBound="1"
307          eType="#//Annotation/uAnnotation" containment="true"/>
308    </eClassifiers>
309  </eSubpackages>
310  <eSubpackages name="AlgorithmItem" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/AlgorithmItem"
311      nsPrefix="AlgorithmItem">
312    <eClassifiers xsi:type="ecore:EClass" name="uAlgorithmItem" abstract="true"/>
313    <eClassifiers xsi:type="ecore:EClass" name="ALGORITHMITEM" eSuperTypes="#//AlgorithmItem/uAlgorithmItem">
314      <eStructuralFeatures xsi:type="ecore:EReference" name="algorithm_" lowerBound="1"
315          eType="#//AlgorithmStatement/uAlgorithmStatement" containment="true"/>
316      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
317          containment="true"/>
318    </eClassifiers>
319    <eClassifiers xsi:type="ecore:EClass" name="ALGORITHMITEMANN" eSuperTypes="#//AlgorithmItem/uAlgorithmItem">
320      <eStructuralFeatures xsi:type="ecore:EReference" name="annotation_" lowerBound="1"
321          eType="#//Annotation/uAnnotation" containment="true"/>
322    </eClassifiers>
323  </eSubpackages>
324  <eSubpackages name="Equation" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Equation"
325      nsPrefix="Equation">
326    <eClassifiers xsi:type="ecore:EClass" name="uEquation" abstract="true"/>
327    <eClassifiers xsi:type="ecore:EClass" name="EQ_IF" eSuperTypes="#//Equation/uEquation">
328      <eStructuralFeatures xsi:type="ecore:EReference" name="ifExp" lowerBound="1"
329          eType="#//Exp/uExp" containment="true"/>
330      <eStructuralFeatures xsi:type="ecore:EReference" name="equationTrueItems" upperBound="-1"
331          eType="#//EquationItem/uEquationItem" containment="true"/>
332      <eStructuralFeatures xsi:type="ecore:EReference" name="elseIfBranches" upperBound="-1"
333          eType="#//Equation/tuple_ElseIfBranch" containment="true"/>
334      <eStructuralFeatures xsi:type="ecore:EReference" name="equationElseItems" upperBound="-1"
335          eType="#//EquationItem/uEquationItem" containment="true"/>
336    </eClassifiers>
337    <eClassifiers xsi:type="ecore:EClass" name="EQ_EQUALS" eSuperTypes="#//Equation/uEquation">
338      <eStructuralFeatures xsi:type="ecore:EReference" name="leftSide" lowerBound="1"
339          eType="#//Exp/uExp" containment="true"/>
340      <eStructuralFeatures xsi:type="ecore:EReference" name="rightSide" lowerBound="1"
341          eType="#//Exp/uExp" containment="true"/>
342    </eClassifiers>
343    <eClassifiers xsi:type="ecore:EClass" name="EQ_CONNECT" eSuperTypes="#//Equation/uEquation">
344      <eStructuralFeatures xsi:type="ecore:EReference" name="connector1" lowerBound="1"
345          eType="#//ComponentRef/uComponentRef" containment="true"/>
346      <eStructuralFeatures xsi:type="ecore:EReference" name="connector2" lowerBound="1"
347          eType="#//ComponentRef/uComponentRef" containment="true"/>
348    </eClassifiers>
349    <eClassifiers xsi:type="ecore:EClass" name="EQ_FOR" eSuperTypes="#//Equation/uEquation">
350      <eStructuralFeatures xsi:type="ecore:EReference" name="forEquations" upperBound="-1"
351          eType="#//EquationItem/uEquationItem" containment="true"/>
352      <eStructuralFeatures xsi:type="ecore:EReference" name="iterators" lowerBound="1"
353          eType="#//Iterators/ForIterators" containment="true"/>
354    </eClassifiers>
355    <eClassifiers xsi:type="ecore:EClass" name="EQ_WHEN_E" eSuperTypes="#//Equation/uEquation">
356      <eStructuralFeatures xsi:type="ecore:EReference" name="whenExp" lowerBound="1"
357          eType="#//Exp/uExp" containment="true"/>
358      <eStructuralFeatures xsi:type="ecore:EReference" name="whenEquations" upperBound="-1"
359          eType="#//EquationItem/uEquationItem" containment="true"/>
360      <eStructuralFeatures xsi:type="ecore:EReference" name="elseWhenEquations" upperBound="-1"
361          eType="#//Equation/tuple_ElseWhenEquation" containment="true"/>
362    </eClassifiers>
363    <eClassifiers xsi:type="ecore:EClass" name="EQ_NORETCALL" eSuperTypes="#//Equation/uEquation">
364      <eStructuralFeatures xsi:type="ecore:EReference" name="functionArgs" lowerBound="1"
365          eType="#//FunctionArgs/uFunctionArguments" containment="true"/>
366      <eStructuralFeatures xsi:type="ecore:EReference" name="functionName" lowerBound="1"
367          eType="#//ComponentRef/uComponentRef" containment="true"/>
368    </eClassifiers>
369    <eClassifiers xsi:type="ecore:EClass" name="tuple_ElseIfBranch">
370      <eStructuralFeatures xsi:type="ecore:EReference" name="exp" lowerBound="1" eType="#//Exp/uExp"
371          containment="true"/>
372      <eStructuralFeatures xsi:type="ecore:EReference" name="equationItem" upperBound="-1"
373          eType="#//EquationItem/uEquationItem" containment="true"/>
374    </eClassifiers>
375    <eClassifiers xsi:type="ecore:EClass" name="tuple_ElseWhenEquation">
376      <eStructuralFeatures xsi:type="ecore:EReference" name="exp" lowerBound="1" eType="#//Exp/uExp"
377          containment="true"/>
378      <eStructuralFeatures xsi:type="ecore:EReference" name="equationItem" upperBound="-1"
379          eType="#//EquationItem/uEquationItem" containment="true"/>
380    </eClassifiers>
381    <eClassifiers xsi:type="ecore:EClass" name="EQ_FAILURE" eSuperTypes="#//Equation/uEquation">
382      <eStructuralFeatures xsi:type="ecore:EReference" name="equ" lowerBound="1" eType="#//EquationItem/uEquationItem"
383          containment="true"/>
384    </eClassifiers>
385  </eSubpackages>
386  <eSubpackages name="AlgorithmStatement" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/AlgorithmStatement"
387      nsPrefix="AlgorithmStatement">
388    <eClassifiers xsi:type="ecore:EClass" name="uAlgorithmStatement" abstract="true"/>
389    <eClassifiers xsi:type="ecore:EClass" name="ALG_ASSIGN" eSuperTypes="#//AlgorithmStatement/uAlgorithmStatement">
390      <eStructuralFeatures xsi:type="ecore:EReference" name="assignComponent" lowerBound="1"
391          eType="#//Exp/uExp" containment="true"/>
392      <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1"
393          eType="#//Exp/uExp" containment="true"/>
394    </eClassifiers>
395    <eClassifiers xsi:type="ecore:EClass" name="ALG_IF" eSuperTypes="#//AlgorithmStatement/uAlgorithmStatement">
396      <eStructuralFeatures xsi:type="ecore:EReference" name="ifExp" lowerBound="1"
397          eType="#//Exp/uExp" containment="true"/>
398      <eStructuralFeatures xsi:type="ecore:EReference" name="trueBranch" upperBound="-1"
399          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
400      <eStructuralFeatures xsi:type="ecore:EReference" name="elseIfAlgorithmBranch"
401          upperBound="-1" eType="#//AlgorithmStatement/tuple_ElseIfAlgorithmBranch"
402          containment="true"/>
403      <eStructuralFeatures xsi:type="ecore:EReference" name="elseBranch" upperBound="-1"
404          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
405    </eClassifiers>
406    <eClassifiers xsi:type="ecore:EClass" name="ALG_FOR" eSuperTypes="#//AlgorithmStatement/uAlgorithmStatement">
407      <eStructuralFeatures xsi:type="ecore:EReference" name="iterators" lowerBound="1"
408          eType="#//Iterators/ForIterators"/>
409      <eStructuralFeatures xsi:type="ecore:EReference" name="forBody" upperBound="-1"
410          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
411    </eClassifiers>
412    <eClassifiers xsi:type="ecore:EClass" name="ALG_WHILE" eSuperTypes="#//AlgorithmStatement/uAlgorithmStatement">
413      <eStructuralFeatures xsi:type="ecore:EReference" name="boolExpr" lowerBound="1"
414          eType="#//Exp/uExp" containment="true"/>
415      <eStructuralFeatures xsi:type="ecore:EReference" name="whileBody" upperBound="-1"
416          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
417    </eClassifiers>
418    <eClassifiers xsi:type="ecore:EClass" name="ALG_WHEN_A" eSuperTypes="#//AlgorithmStatement/uAlgorithmStatement">
419      <eStructuralFeatures xsi:type="ecore:EReference" name="boolExpr" lowerBound="1"
420          eType="#//Exp/uExp" containment="true"/>
421      <eStructuralFeatures xsi:type="ecore:EReference" name="whenBody" upperBound="-1"
422          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
423      <eStructuralFeatures xsi:type="ecore:EReference" name="elseWhenAlgorithmBranch"
424          upperBound="-1" eType="#//AlgorithmStatement/tuple_ElseWhenAlgorithmBranch"
425          containment="true"/>
426    </eClassifiers>
427    <eClassifiers xsi:type="ecore:EClass" name="ALG_NORETCALL" eSuperTypes="#//AlgorithmStatement/uAlgorithmStatement">
428      <eStructuralFeatures xsi:type="ecore:EReference" name="functionCall" lowerBound="1"
429          eType="#//ComponentRef/uComponentRef" containment="true"/>
430      <eStructuralFeatures xsi:type="ecore:EReference" name="functionArgs" lowerBound="1"
431          eType="#//FunctionArgs/uFunctionArguments" containment="true"/>
432    </eClassifiers>
433    <eClassifiers xsi:type="ecore:EClass" name="ALG_RETURN" eSuperTypes="#//AlgorithmStatement/uAlgorithmStatement"/>
434    <eClassifiers xsi:type="ecore:EClass" name="ALG_BREAK" eSuperTypes="#//AlgorithmStatement/uAlgorithmStatement"/>
435    <eClassifiers xsi:type="ecore:EClass" name="tuple_ElseIfAlgorithmBranch">
436      <eStructuralFeatures xsi:type="ecore:EReference" name="exp" lowerBound="1" eType="#//Exp/uExp"
437          containment="true"/>
438      <eStructuralFeatures xsi:type="ecore:EReference" name="algorithmItem" upperBound="-1"
439          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
440    </eClassifiers>
441    <eClassifiers xsi:type="ecore:EClass" name="tuple_ElseWhenAlgorithmBranch">
442      <eStructuralFeatures xsi:type="ecore:EReference" name="exp" lowerBound="1" eType="#//Exp/uExp"
443          containment="true"/>
444      <eStructuralFeatures xsi:type="ecore:EReference" name="algorithmItem" upperBound="-1"
445          eType="#//AlgorithmItem/uAlgorithmItem" containment="true"/>
446    </eClassifiers>
447  </eSubpackages>
448  <eSubpackages name="Modifications" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Modifications"
449      nsPrefix="Modifications">
450    <eClassifiers xsi:type="ecore:EClass" name="uModification" abstract="true"/>
451    <eClassifiers xsi:type="ecore:EClass" name="CLASSMOD" eSuperTypes="#//Modifications/uModification">
452      <eStructuralFeatures xsi:type="ecore:EReference" name="elementArgList" upperBound="-1"
453          eType="#//ElementArg/uElementArg" containment="true"/>
454      <eStructuralFeatures xsi:type="ecore:EReference" name="expOption" eType="#//Exp/uExp"
455          containment="true"/>
456    </eClassifiers>
457  </eSubpackages>
458  <eSubpackages name="ElementArg" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ElementArg"
459      nsPrefix="ElementArg">
460    <eClassifiers xsi:type="ecore:EClass" name="uElementArg" abstract="true"/>
461    <eClassifiers xsi:type="ecore:EClass" name="MODIFICATION" eSuperTypes="#//ElementArg/uElementArg">
462      <eStructuralFeatures xsi:type="ecore:EAttribute" name="finalItem" lowerBound="1"
463          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
464      <eStructuralFeatures xsi:type="ecore:EReference" name="each_" lowerBound="1"
465          eType="#//Each/uEach" containment="true"/>
466      <eStructuralFeatures xsi:type="ecore:EReference" name="componentReg" lowerBound="1"
467          eType="#//ComponentRef/uComponentRef" containment="true"/>
468      <eStructuralFeatures xsi:type="ecore:EReference" name="modification" eType="#//Modifications/uModification"
469          containment="true"/>
470      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
471          containment="true"/>
472    </eClassifiers>
473    <eClassifiers xsi:type="ecore:EClass" name="REDECLARATION" eSuperTypes="#//ElementArg/uElementArg">
474      <eStructuralFeatures xsi:type="ecore:EAttribute" name="finalItem" lowerBound="1"
475          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
476      <eStructuralFeatures xsi:type="ecore:EReference" name="redeclareKeywords" lowerBound="1"
477          eType="#//RedeclareKeywords/uRedeclareKeywords" containment="true"/>
478      <eStructuralFeatures xsi:type="ecore:EReference" name="each_" lowerBound="1"
479          eType="#//Each/uEach" containment="true"/>
480      <eStructuralFeatures xsi:type="ecore:EReference" name="elementSpec" lowerBound="1"
481          eType="#//ElementSpec/uElementSpec" containment="true"/>
482      <eStructuralFeatures xsi:type="ecore:EReference" name="constrainClass" lowerBound="1"
483          eType="#//ConstrainClass/uConstrainClass" containment="true"/>
484    </eClassifiers>
485  </eSubpackages>
486  <eSubpackages name="RedeclareKeywords" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/RedeclareKeywords"
487      nsPrefix="RedeclareKeywords">
488    <eClassifiers xsi:type="ecore:EEnum" name="BSOLETE_RedeclareKeywords">
489      <eLiterals name="REDECLARE"/>
490      <eLiterals name="REPLACEABLE" value="1"/>
491      <eLiterals name="REDECLARE_REPLACEABLE" value="2"/>
492    </eClassifiers>
493    <eClassifiers xsi:type="ecore:EClass" name="uRedeclareKeywords" abstract="true"/>
494    <eClassifiers xsi:type="ecore:EClass" name="REDECLARE" eSuperTypes="#//RedeclareKeywords/uRedeclareKeywords"/>
495    <eClassifiers xsi:type="ecore:EClass" name="REPLACEABLE" eSuperTypes="#//RedeclareKeywords/uRedeclareKeywords"/>
496    <eClassifiers xsi:type="ecore:EClass" name="REDECLARE_REPLACEABLE" eSuperTypes="#//RedeclareKeywords/uRedeclareKeywords"/>
497  </eSubpackages>
498  <eSubpackages name="Each" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Each"
499      nsPrefix="Each">
500    <eClassifiers xsi:type="ecore:EEnum" name="OBSOLETE_Each">
501      <eLiterals name="EACH"/>
502      <eLiterals name="NON_EACH" value="1"/>
503    </eClassifiers>
504    <eClassifiers xsi:type="ecore:EClass" name="uEach" abstract="true"/>
505    <eClassifiers xsi:type="ecore:EClass" name="EACH" eSuperTypes="#//Each/uEach"/>
506    <eClassifiers xsi:type="ecore:EClass" name="NON_EACH" eSuperTypes="#//Each/uEach"/>
507  </eSubpackages>
508  <eSubpackages name="ElementAttributes" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ElementAttributes"
509      nsPrefix="ElementAttributes">
510    <eClassifiers xsi:type="ecore:EClass" name="uElementAttributes" abstract="true"/>
511    <eClassifiers xsi:type="ecore:EClass" name="ATTR" eSuperTypes="#//ElementAttributes/uElementAttributes">
512      <eStructuralFeatures xsi:type="ecore:EAttribute" name="flowPrefix" lowerBound="1"
513          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
514      <eStructuralFeatures xsi:type="ecore:EAttribute" name="streamPrefix" lowerBound="1"
515          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
516      <eStructuralFeatures xsi:type="ecore:EReference" name="variability" lowerBound="1"
517          eType="#//Variability/uVariability" containment="true"/>
518      <eStructuralFeatures xsi:type="ecore:EReference" name="direction" lowerBound="1"
519          eType="#//Direction/uDirection" containment="true"/>
520      <eStructuralFeatures xsi:type="ecore:EReference" name="arrayDim" eType="#//ArrayDim/ArrayDim"
521          containment="true"/>
522    </eClassifiers>
523  </eSubpackages>
524  <eSubpackages name="Variability" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Variability"
525      nsPrefix="Variability">
526    <eClassifiers xsi:type="ecore:EEnum" name="OBSOLETE_Variability">
527      <eLiterals name="CONTINUOUS"/>
528      <eLiterals name="DISCRETE" value="1"/>
529      <eLiterals name="PARAMETER" value="2"/>
530      <eLiterals name="CONSTANT" value="3"/>
531    </eClassifiers>
532    <eClassifiers xsi:type="ecore:EClass" name="uVariability" abstract="true"/>
533    <eClassifiers xsi:type="ecore:EClass" name="VAR" eSuperTypes="#//Variability/uVariability"/>
534    <eClassifiers xsi:type="ecore:EClass" name="DISCRETE" eSuperTypes="#//Variability/uVariability"/>
535    <eClassifiers xsi:type="ecore:EClass" name="PARAM" eSuperTypes="#//Variability/uVariability"/>
536    <eClassifiers xsi:type="ecore:EClass" name="CONST" eSuperTypes="#//Variability/uVariability"/>
537  </eSubpackages>
538  <eSubpackages name="Direction" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Direction"
539      nsPrefix="Direction">
540    <eClassifiers xsi:type="ecore:EEnum" name="OBSOLETE_Direction">
541      <eLiterals name="INPUT"/>
542      <eLiterals name="OUTPUT" value="1"/>
543      <eLiterals name="ACAUSAL" value="2"/>
544    </eClassifiers>
545    <eClassifiers xsi:type="ecore:EClass" name="uDirection" abstract="true"/>
546    <eClassifiers xsi:type="ecore:EClass" name="INPUT" eSuperTypes="#//Direction/uDirection"/>
547    <eClassifiers xsi:type="ecore:EClass" name="OUTPUT" eSuperTypes="#//Direction/uDirection"/>
548    <eClassifiers xsi:type="ecore:EClass" name="BIDIR" eSuperTypes="#//Direction/uDirection"/>
549  </eSubpackages>
550  <eSubpackages name="ArrayDim" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ArrayDim"
551      nsPrefix="ArrayDim">
552    <eClassifiers xsi:type="ecore:EClass" name="ArrayDim">
553      <eStructuralFeatures xsi:type="ecore:EReference" name="subscripts" upperBound="-1"
554          eType="#//Subscript/uSubscript" containment="true"/>
555    </eClassifiers>
556  </eSubpackages>
557  <eSubpackages name="Exp" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Exp"
558      nsPrefix="Exp">
559    <eClassifiers xsi:type="ecore:EClass" name="uExp" abstract="true"/>
560    <eClassifiers xsi:type="ecore:EClass" name="INTEGER" eSuperTypes="#//Exp/uExp">
561      <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1"
562          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
563    </eClassifiers>
564    <eClassifiers xsi:type="ecore:EClass" name="REAL" eSuperTypes="#//Exp/uExp">
565      <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1"
566          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
567    </eClassifiers>
568    <eClassifiers xsi:type="ecore:EClass" name="CREF" eSuperTypes="#//Exp/uExp">
569      <eStructuralFeatures xsi:type="ecore:EReference" name="componentReg" lowerBound="1"
570          eType="#//ComponentRef/uComponentRef" containment="true"/>
571    </eClassifiers>
572    <eClassifiers xsi:type="ecore:EClass" name="STRING" eSuperTypes="#//Exp/uExp">
573      <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1"
574          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
575    </eClassifiers>
576    <eClassifiers xsi:type="ecore:EClass" name="BOOL" eSuperTypes="#//Exp/uExp">
577      <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1"
578          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
579    </eClassifiers>
580    <eClassifiers xsi:type="ecore:EClass" name="BINARY" eSuperTypes="#//Exp/uExp">
581      <eStructuralFeatures xsi:type="ecore:EReference" name="exp1" lowerBound="1"
582          eType="#//Exp/uExp" containment="true"/>
583      <eStructuralFeatures xsi:type="ecore:EReference" name="op" lowerBound="1" eType="#//Operator/uOperator"
584          containment="true"/>
585      <eStructuralFeatures xsi:type="ecore:EReference" name="exp2" lowerBound="1"
586          eType="#//Exp/uExp" containment="true"/>
587    </eClassifiers>
588    <eClassifiers xsi:type="ecore:EClass" name="UNARY" eSuperTypes="#//Exp/uExp">
589      <eStructuralFeatures xsi:type="ecore:EReference" name="op" lowerBound="1" eType="#//Operator/uOperator"
590          containment="true"/>
591      <eStructuralFeatures xsi:type="ecore:EReference" name="exp" lowerBound="1" eType="#//Exp/uExp"
592          containment="true"/>
593    </eClassifiers>
594    <eClassifiers xsi:type="ecore:EClass" name="LBINARY" eSuperTypes="#//Exp/uExp">
595      <eStructuralFeatures xsi:type="ecore:EReference" name="exp1" lowerBound="1"
596          eType="#//Exp/uExp" containment="true"/>
597      <eStructuralFeatures xsi:type="ecore:EReference" name="op" lowerBound="1" eType="#//Operator/uOperator"
598          containment="true"/>
599      <eStructuralFeatures xsi:type="ecore:EReference" name="exp2" lowerBound="1"
600          eType="#//Exp/uExp" containment="true"/>
601    </eClassifiers>
602    <eClassifiers xsi:type="ecore:EClass" name="LUNARY" eSuperTypes="#//Exp/uExp">
603      <eStructuralFeatures xsi:type="ecore:EReference" name="op" lowerBound="1" eType="#//Operator/uOperator"
604          containment="true"/>
605      <eStructuralFeatures xsi:type="ecore:EReference" name="exp" lowerBound="1" eType="#//Exp/uExp"
606          containment="true"/>
607    </eClassifiers>
608    <eClassifiers xsi:type="ecore:EClass" name="RELATION" eSuperTypes="#//Exp/uExp">
609      <eStructuralFeatures xsi:type="ecore:EReference" name="exp1" lowerBound="1"
610          eType="#//Exp/uExp" containment="true"/>
611      <eStructuralFeatures xsi:type="ecore:EReference" name="op" lowerBound="1" eType="#//Operator/uOperator"
612          containment="true"/>
613      <eStructuralFeatures xsi:type="ecore:EReference" name="exp2" lowerBound="1"
614          eType="#//Exp/uExp" containment="true"/>
615    </eClassifiers>
616    <eClassifiers xsi:type="ecore:EClass" name="IFEXP" eSuperTypes="#//Exp/uExp">
617      <eStructuralFeatures xsi:type="ecore:EReference" name="ifExp" lowerBound="1"
618          eType="#//Exp/uExp" containment="true"/>
619      <eStructuralFeatures xsi:type="ecore:EReference" name="trueBranch" lowerBound="1"
620          eType="#//Exp/uExp" containment="true"/>
621      <eStructuralFeatures xsi:type="ecore:EReference" name="elseBranch" lowerBound="1"
622          eType="#//Exp/uExp" containment="true"/>
623      <eStructuralFeatures xsi:type="ecore:EReference" name="elseIfBranch" upperBound="-1"
624          eType="#//Exp/tuple_ElseIfBranch" containment="true"/>
625    </eClassifiers>
626    <eClassifiers xsi:type="ecore:EClass" name="CALL" eSuperTypes="#//Exp/uExp">
627      <eStructuralFeatures xsi:type="ecore:EReference" name="function" lowerBound="1"
628          eType="#//ComponentRef/uComponentRef" containment="true"/>
629      <eStructuralFeatures xsi:type="ecore:EReference" name="functionArgs" lowerBound="1"
630          eType="#//FunctionArgs/uFunctionArguments" containment="true"/>
631    </eClassifiers>
632    <eClassifiers xsi:type="ecore:EClass" name="ARRAY" eSuperTypes="#//Exp/uExp">
633      <eStructuralFeatures xsi:type="ecore:EReference" name="arrayExp" upperBound="-1"
634          eType="#//Exp/uExp" containment="true"/>
635    </eClassifiers>
636    <eClassifiers xsi:type="ecore:EClass" name="MATRIX" eSuperTypes="#//Exp/uExp">
637      <eStructuralFeatures xsi:type="ecore:EReference" name="matrix" upperBound="-1"
638          eType="#//Exp/tuple_Matrix" containment="true"/>
639    </eClassifiers>
640    <eClassifiers xsi:type="ecore:EClass" name="RANGE" eSuperTypes="#//Exp/uExp">
641      <eStructuralFeatures xsi:type="ecore:EReference" name="start" lowerBound="1"
642          eType="#//Exp/uExp" containment="true"/>
643      <eStructuralFeatures xsi:type="ecore:EReference" name="step" eType="#//Exp/uExp"
644          containment="true"/>
645      <eStructuralFeatures xsi:type="ecore:EReference" name="stop" lowerBound="1"
646          eType="#//Exp/uExp" containment="true"/>
647    </eClassifiers>
648    <eClassifiers xsi:type="ecore:EClass" name="TUPLE" eSuperTypes="#//Exp/uExp">
649      <eStructuralFeatures xsi:type="ecore:EReference" name="expressions" upperBound="-1"
650          eType="#//Exp/uExp" containment="true"/>
651    </eClassifiers>
652    <eClassifiers xsi:type="ecore:EClass" name="END" eSuperTypes="#//Exp/uExp"/>
653    <eClassifiers xsi:type="ecore:EClass" name="PARTEVALFUNCTION" eSuperTypes="#//Exp/uExp">
654      <eStructuralFeatures xsi:type="ecore:EReference" name="function_" lowerBound="1"
655          eType="#//ComponentRef/uComponentRef" containment="true"/>
656      <eStructuralFeatures xsi:type="ecore:EReference" name="functionArgs" lowerBound="1"
657          eType="#//FunctionArgs/uFunctionArguments" containment="true"/>
658    </eClassifiers>
659    <eClassifiers xsi:type="ecore:EClass" name="tuple_ElseIfBranch">
660      <eStructuralFeatures xsi:type="ecore:EReference" name="exp1" lowerBound="1"
661          eType="#//Exp/uExp" containment="true"/>
662      <eStructuralFeatures xsi:type="ecore:EReference" name="exp2" lowerBound="1"
663          eType="#//Exp/uExp" containment="true"/>
664    </eClassifiers>
665    <eClassifiers xsi:type="ecore:EClass" name="tuple_Matrix">
666      <eStructuralFeatures xsi:type="ecore:EReference" name="exp" upperBound="-1"
667          eType="#//Exp/uExp" containment="true"/>
668    </eClassifiers>
669    <eClassifiers xsi:type="ecore:EClass" name="CALL_INITIAL" eSuperTypes="#//Exp/uExp"/>
670  </eSubpackages>
671  <eSubpackages name="FunctionArgs" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/FunctionArgs"
672      nsPrefix="FunctionArgs">
673    <eClassifiers xsi:type="ecore:EClass" name="uFunctionArguments" abstract="true"/>
674    <eClassifiers xsi:type="ecore:EClass" name="FUNCTIONARGS" eSuperTypes="#//FunctionArgs/uFunctionArguments">
675      <eStructuralFeatures xsi:type="ecore:EReference" name="args" upperBound="-1"
676          eType="#//Exp/uExp" containment="true"/>
677      <eStructuralFeatures xsi:type="ecore:EReference" name="argNames" upperBound="-1"
678          eType="#//NamedArg/uNamedArg" containment="true"/>
679    </eClassifiers>
680    <eClassifiers xsi:type="ecore:EClass" name="FOR_ITER_FARG" eSuperTypes="#//FunctionArgs/uFunctionArguments">
681      <eStructuralFeatures xsi:type="ecore:EReference" name="exp" lowerBound="1" eType="#//Exp/uExp"
682          containment="true"/>
683      <eStructuralFeatures xsi:type="ecore:EReference" name="iterators" lowerBound="1"
684          eType="#//Iterators/ForIterator" containment="true"/>
685    </eClassifiers>
686  </eSubpackages>
687  <eSubpackages name="NamedArg" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/NamedArg"
688      nsPrefix="NamedArg">
689    <eClassifiers xsi:type="ecore:EClass" name="uNamedArg" abstract="true"/>
690    <eClassifiers xsi:type="ecore:EClass" name="NAMEDARG" eSuperTypes="#//NamedArg/uNamedArg">
691      <eStructuralFeatures xsi:type="ecore:EAttribute" name="argName" lowerBound="1"
692          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
693      <eStructuralFeatures xsi:type="ecore:EReference" name="argValue" lowerBound="1"
694          eType="#//Exp/uExp" containment="true"/>
695    </eClassifiers>
696  </eSubpackages>
697  <eSubpackages name="Operator" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Operator"
698      nsPrefix="Operator">
699    <eClassifiers xsi:type="ecore:EEnum" name="OBSOLETE_Operator">
700      <eLiterals name="ADD"/>
701      <eLiterals name="SUB" value="1"/>
702      <eLiterals name="MUL" value="2"/>
703      <eLiterals name="DIV" value="3"/>
704      <eLiterals name="POW" value="4"/>
705      <eLiterals name="UPLUS" value="5"/>
706      <eLiterals name="UMINUS" value="6"/>
707      <eLiterals name="AND" value="7"/>
708      <eLiterals name="OR" value="8"/>
709      <eLiterals name="NOT" value="9"/>
710      <eLiterals name="LESS" value="10"/>
711      <eLiterals name="LESSEQ" value="11"/>
712      <eLiterals name="GREATER" value="12"/>
713      <eLiterals name="GREATEREQ" value="13"/>
714      <eLiterals name="EQUAL" value="14"/>
715      <eLiterals name="NEQUAL" value="15"/>
716    </eClassifiers>
717    <eClassifiers xsi:type="ecore:EClass" name="uOperator" abstract="true"/>
718    <eClassifiers xsi:type="ecore:EClass" name="ADD" eSuperTypes="#//Operator/uOperator"/>
719    <eClassifiers xsi:type="ecore:EClass" name="SUB" eSuperTypes="#//Operator/uOperator"/>
720    <eClassifiers xsi:type="ecore:EClass" name="MUL" eSuperTypes="#//Operator/uOperator"/>
721    <eClassifiers xsi:type="ecore:EClass" name="DIV" eSuperTypes="#//Operator/uOperator"/>
722    <eClassifiers xsi:type="ecore:EClass" name="POW" eSuperTypes="#//Operator/uOperator"/>
723    <eClassifiers xsi:type="ecore:EClass" name="UPLUS" eSuperTypes="#//Operator/uOperator"/>
724    <eClassifiers xsi:type="ecore:EClass" name="UMINUS" eSuperTypes="#//Operator/uOperator"/>
725    <eClassifiers xsi:type="ecore:EClass" name="ADD_EW" eSuperTypes="#//Operator/uOperator"/>
726    <eClassifiers xsi:type="ecore:EClass" name="SUB_EW" eSuperTypes="#//Operator/uOperator"/>
727    <eClassifiers xsi:type="ecore:EClass" name="MUL_EW" eSuperTypes="#//Operator/uOperator"/>
728    <eClassifiers xsi:type="ecore:EClass" name="DIV_EW" eSuperTypes="#//Operator/uOperator"/>
729    <eClassifiers xsi:type="ecore:EClass" name="POW_EW" eSuperTypes="#//Operator/uOperator"/>
730    <eClassifiers xsi:type="ecore:EClass" name="UPLUS_EW" eSuperTypes="#//Operator/uOperator"/>
731    <eClassifiers xsi:type="ecore:EClass" name="UMINUS_EW" eSuperTypes="#//Operator/uOperator"/>
732    <eClassifiers xsi:type="ecore:EClass" name="AND" eSuperTypes="#//Operator/uOperator"/>
733    <eClassifiers xsi:type="ecore:EClass" name="OR" eSuperTypes="#//Operator/uOperator"/>
734    <eClassifiers xsi:type="ecore:EClass" name="NOT" eSuperTypes="#//Operator/uOperator"/>
735    <eClassifiers xsi:type="ecore:EClass" name="LESS" eSuperTypes="#//Operator/uOperator"/>
736    <eClassifiers xsi:type="ecore:EClass" name="LESSEQ" eSuperTypes="#//Operator/uOperator"/>
737    <eClassifiers xsi:type="ecore:EClass" name="GREATER" eSuperTypes="#//Operator/uOperator"/>
738    <eClassifiers xsi:type="ecore:EClass" name="GREATEREQ" eSuperTypes="#//Operator/uOperator"/>
739    <eClassifiers xsi:type="ecore:EClass" name="EQUAL" eSuperTypes="#//Operator/uOperator"/>
740    <eClassifiers xsi:type="ecore:EClass" name="NEQUAL" eSuperTypes="#//Operator/uOperator"/>
741  </eSubpackages>
742  <eSubpackages name="Subscript" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Subscript"
743      nsPrefix="Subscript">
744    <eClassifiers xsi:type="ecore:EClass" name="uSubscript" abstract="true"/>
745    <eClassifiers xsi:type="ecore:EClass" name="NOSUB" eSuperTypes="#//Subscript/uSubscript"/>
746    <eClassifiers xsi:type="ecore:EClass" name="SUBSCRIPT" eSuperTypes="#//Subscript/uSubscript">
747      <eStructuralFeatures xsi:type="ecore:EReference" name="subScript" lowerBound="1"
748          eType="#//Exp/uExp" containment="true"/>
749    </eClassifiers>
750  </eSubpackages>
751  <eSubpackages name="ComponentRef" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ComponentRef"
752      nsPrefix="ComponentRef">
753    <eClassifiers xsi:type="ecore:EClass" name="uComponentRef" abstract="true"/>
754    <eClassifiers xsi:type="ecore:EClass" name="CREF_QUAL" eSuperTypes="#//ComponentRef/uComponentRef">
755      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
756          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
757      <eStructuralFeatures xsi:type="ecore:EReference" name="subscripts" upperBound="-1"
758          eType="#//Subscript/uSubscript" containment="true"/>
759      <eStructuralFeatures xsi:type="ecore:EReference" name="componentRef" lowerBound="1"
760          eType="#//ComponentRef/uComponentRef" containment="true"/>
761    </eClassifiers>
762    <eClassifiers xsi:type="ecore:EClass" name="CREF_IDENT" eSuperTypes="#//ComponentRef/uComponentRef">
763      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
764          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
765      <eStructuralFeatures xsi:type="ecore:EReference" name="subscripts" upperBound="-1"
766          eType="#//Subscript/uSubscript" containment="true"/>
767    </eClassifiers>
768    <eClassifiers xsi:type="ecore:EClass" name="WILD" eSuperTypes="#//ComponentRef/uComponentRef"/>
769  </eSubpackages>
770  <eSubpackages name="Path" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Path"
771      nsPrefix="Path">
772    <eClassifiers xsi:type="ecore:EClass" name="uPath" abstract="true"/>
773    <eClassifiers xsi:type="ecore:EClass" name="QUALIFIED" eSuperTypes="#//Path/uPath">
774      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
775          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
776      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
777          eType="#//Path/uPath" containment="true"/>
778    </eClassifiers>
779    <eClassifiers xsi:type="ecore:EClass" name="IDENT" eSuperTypes="#//Path/uPath">
780      <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
781          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
782    </eClassifiers>
783    <eClassifiers xsi:type="ecore:EClass" name="FULLYQUALIFIED" eSuperTypes="#//Path/uPath">
784      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
785          eType="#//Path/uPath" containment="true"/>
786    </eClassifiers>
787  </eSubpackages>
788  <eSubpackages name="Restriction" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Restriction"
789      nsPrefix="Restriction">
790    <eClassifiers xsi:type="ecore:EEnum" name="OBSOLETE_Restriction">
791      <eLiterals name="R_CLASS"/>
792      <eLiterals name="R_MODEL" value="1"/>
793      <eLiterals name="R_RECORD" value="2"/>
794      <eLiterals name="R_BLOCK" value="3"/>
795      <eLiterals name="R_CONNECTOR" value="4"/>
796      <eLiterals name="R_EXP_CONNECTOR" value="5"/>
797      <eLiterals name="R_TYPE" value="6"/>
798      <eLiterals name="R_PACKAGE" value="7"/>
799      <eLiterals name="R_FUNCTION" value="8"/>
800      <eLiterals name="R_ENUMERATION" value="9"/>
801      <eLiterals name="R_PREDEFINED_INT" value="10"/>
802      <eLiterals name="R_PREDEFINED_REAL" value="11"/>
803      <eLiterals name="R_PREDEFINED_STRING" value="12"/>
804      <eLiterals name="R_PREDEFINED_BOOL" value="13"/>
805      <eLiterals name="R_PREDEFINED_ENUM" value="14"/>
806    </eClassifiers>
807    <eClassifiers xsi:type="ecore:EClass" name="uRestriction" abstract="true"/>
808    <eClassifiers xsi:type="ecore:EClass" name="R_CLASS" eSuperTypes="#//Restriction/uRestriction"/>
809    <eClassifiers xsi:type="ecore:EClass" name="R_MODEL" eSuperTypes="#//Restriction/uRestriction"/>
810    <eClassifiers xsi:type="ecore:EClass" name="R_RECORD" eSuperTypes="#//Restriction/uRestriction"/>
811    <eClassifiers xsi:type="ecore:EClass" name="R_BLOCK" eSuperTypes="#//Restriction/uRestriction"/>
812    <eClassifiers xsi:type="ecore:EClass" name="R_CONNECTOR" eSuperTypes="#//Restriction/uRestriction"/>
813    <eClassifiers xsi:type="ecore:EClass" name="R_EXP_CONNECTOR" eSuperTypes="#//Restriction/uRestriction"/>
814    <eClassifiers xsi:type="ecore:EClass" name="R_TYPE" eSuperTypes="#//Restriction/uRestriction"/>
815    <eClassifiers xsi:type="ecore:EClass" name="R_PACKAGE" eSuperTypes="#//Restriction/uRestriction"/>
816    <eClassifiers xsi:type="ecore:EClass" name="R_FUNCTION" eSuperTypes="#//Restriction/uRestriction"/>
817    <eClassifiers xsi:type="ecore:EClass" name="R_ENUMERATION" eSuperTypes="#//Restriction/uRestriction"/>
818    <eClassifiers xsi:type="ecore:EClass" name="R_PREDEFINED_INT" eSuperTypes="#//Restriction/uRestriction"/>
819    <eClassifiers xsi:type="ecore:EClass" name="R_PREDEFINED_REAL" eSuperTypes="#//Restriction/uRestriction"/>
820    <eClassifiers xsi:type="ecore:EClass" name="R_PREDEFINED_STRING" eSuperTypes="#//Restriction/uRestriction"/>
821    <eClassifiers xsi:type="ecore:EClass" name="R_PREDEFINED_BOOL" eSuperTypes="#//Restriction/uRestriction"/>
822    <eClassifiers xsi:type="ecore:EClass" name="R_PREDEFINED_ENUM" eSuperTypes="#//Restriction/uRestriction"/>
823  </eSubpackages>
824  <eSubpackages name="Annotation" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Annotation"
825      nsPrefix="Annotation">
826    <eClassifiers xsi:type="ecore:EClass" name="uAnnotation" abstract="true"/>
827    <eClassifiers xsi:type="ecore:EClass" name="ANNOTATION" eSuperTypes="#//Annotation/uAnnotation">
828      <eStructuralFeatures xsi:type="ecore:EReference" name="elementArgs" upperBound="-1"
829          eType="#//ElementArg/uElementArg" containment="true"/>
830    </eClassifiers>
831  </eSubpackages>
832  <eSubpackages name="Comment" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Comment"
833      nsPrefix="Comment">
834    <eClassifiers xsi:type="ecore:EClass" name="uComment" abstract="true"/>
835    <eClassifiers xsi:type="ecore:EClass" name="COMMENT" eSuperTypes="#//Comment/uComment">
836      <eStructuralFeatures xsi:type="ecore:EReference" name="annotation_" eType="#//Annotation/uAnnotation"
837          containment="true"/>
838      <eStructuralFeatures xsi:type="ecore:EReference" name="comment" eType="#//Comment/uComment"
839          containment="true"/>
840    </eClassifiers>
841    <eClassifiers xsi:type="ecore:EClass" name="STRING_COMMENT" eSuperTypes="#//Comment/uComment">
842      <eStructuralFeatures xsi:type="ecore:EAttribute" name="comment" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
843    </eClassifiers>
844  </eSubpackages>
845  <eSubpackages name="ExternalDecl" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/ExternalDecl"
846      nsPrefix="ExternalDecl">
847    <eClassifiers xsi:type="ecore:EClass" name="uExternalDecl" abstract="true"/>
848    <eClassifiers xsi:type="ecore:EClass" name="EXTERNALDECL" eSuperTypes="#//ExternalDecl/uExternalDecl">
849      <eStructuralFeatures xsi:type="ecore:EAttribute" name="funcName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
850      <eStructuralFeatures xsi:type="ecore:EAttribute" name="lang" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
851      <eStructuralFeatures xsi:type="ecore:EReference" name="output_" eType="#//ComponentRef/uComponentRef"
852          containment="true"/>
853      <eStructuralFeatures xsi:type="ecore:EReference" name="args" upperBound="-1"
854          eType="#//Exp/uExp" containment="true"/>
855      <eStructuralFeatures xsi:type="ecore:EReference" name="annotation_" eType="#//Annotation/uAnnotation"
856          containment="true"/>
857    </eClassifiers>
858  </eSubpackages>
859  <eSubpackages name="TimeStamp" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/TimeStamp"
860      nsPrefix="TimeStamp">
861    <eClassifiers xsi:type="ecore:EClass" name="uTimeStamp" abstract="true"/>
862    <eClassifiers xsi:type="ecore:EClass" name="TIMESTAMP" eSuperTypes="#//TimeStamp/uTimeStamp">
863      <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastBuildTime" lowerBound="1"
864          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/>
865      <eStructuralFeatures xsi:type="ecore:EAttribute" name="lastEditTime" lowerBound="1"
866          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/>
867    </eClassifiers>
868  </eSubpackages>
869  <eSubpackages name="Iterators" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/Iterators"
870      nsPrefix="Iterators">
871    <eClassifiers xsi:type="ecore:EClass" name="ForIterator">
872      <eStructuralFeatures xsi:type="ecore:EReference" name="tuple" eType="#//Iterators/tuple_ForIterator"
873          containment="true"/>
874    </eClassifiers>
875    <eClassifiers xsi:type="ecore:EClass" name="tuple_ForIterator">
876      <eStructuralFeatures xsi:type="ecore:EAttribute" name="Ident" lowerBound="1"
877          eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
878      <eStructuralFeatures xsi:type="ecore:EReference" name="Exp" eType="#//Exp/uExp"
879          containment="true"/>
880    </eClassifiers>
881    <eClassifiers xsi:type="ecore:EClass" name="ForIterators">
882      <eStructuralFeatures xsi:type="ecore:EReference" name="forIterator" upperBound="-1"
883          eType="#//Iterators/ForIterator" containment="true"/>
884    </eClassifiers>
885  </eSubpackages>
886  <eSubpackages name="TypeSpec" nsURI="http://www.openmodelica.org/openmodelica.abstact.syntax/TypeSpec"
887      nsPrefix="TypeSpec">
888    <eClassifiers xsi:type="ecore:EClass" name="uTypeSpec" abstract="true"/>
889    <eClassifiers xsi:type="ecore:EClass" name="TPATH" eSuperTypes="#//TypeSpec/uTypeSpec">
890      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
891          eType="#//Path/uPath" containment="true"/>
892      <eStructuralFeatures xsi:type="ecore:EReference" name="arrayDim" eType="#//ArrayDim/ArrayDim"
893          containment="true"/>
894    </eClassifiers>
895    <eClassifiers xsi:type="ecore:EClass" name="TCOMPLEX" eSuperTypes="#//TypeSpec/uTypeSpec">
896      <eStructuralFeatures xsi:type="ecore:EReference" name="path" lowerBound="1"
897          eType="#//Path/uPath" containment="true"/>
898      <eStructuralFeatures xsi:type="ecore:EReference" name="typeSpecs" upperBound="-1"
899          eType="#//TypeSpec/uTypeSpec" containment="true"/>
900    </eClassifiers>
901  </eSubpackages>
902</ecore:EPackage>
Note: See TracBrowser for help on using the repository browser.