blob: ccd992569bb66df78abfdce04458659b427e5a0a [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<ecore:EPackage 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" name="qvtoperational"
nsURI="http://www.eclipse.org/QVT2/1.0.0/Operational" nsPrefix="qvtoperational">
<eSubpackages name="cst" nsURI="http://www.eclipse.org/QVT2/1.0.0/Operational/cst"
nsPrefix="qvtoperational.cst">
<eClassifiers xsi:type="ecore:EClass" name="MappingModuleCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="headerCS" lowerBound="1"
eType="#//cst/TransformationHeaderCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1"
eType="#//cst/ImportCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="metamodels" upperBound="-1"
eType="#//cst/ModelTypeCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="renamings" upperBound="-1"
eType="#//cst/RenameCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
eType="#//cst/ModulePropertyCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="methods" upperBound="-1"
eType="#//cst/MappingMethodCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="classifierDefCS" upperBound="-1"
eType="#//cst/ClassifierDefCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="tags" upperBound="-1"
eType="#//cst/TagCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LibraryCS" eSuperTypes="#//cst/MappingModuleCS"/>
<eClassifiers xsi:type="ecore:EClass" name="ImportCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="pathNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/PathNameCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LibraryImportCS" eSuperTypes="#//cst/ImportCS"/>
<eClassifiers xsi:type="ecore:EClass" name="RenameCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="typeCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="originalName" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/StringLiteralExpCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModulePropertyCS" abstract="true"
eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConfigPropertyCS" eSuperTypes="#//cst/ModulePropertyCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="typeCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LocalPropertyCS" eSuperTypes="#//cst/ModulePropertyCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="typeCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="oclExpressionCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ContextualPropertyCS" eSuperTypes="#//cst/ModulePropertyCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="scopedNameCS" eType="#//cst/ScopedNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="typeCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="oclExpressionCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ClassifierDefCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="extends" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
eType="#//cst/ClassifierPropertyCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="tags" upperBound="-1"
eType="#//cst/TagCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ClassifierPropertyCS" eSuperTypes="#//cst/LocalPropertyCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="stereotypeQualifiers"
upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="featureKeys" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" eType="#//cst/MultiplicityDefCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="opposite" eType="#//cst/OppositePropertyCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isOrdered" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
defaultValueLiteral="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OppositePropertyCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isNavigable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
defaultValueLiteral="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="multiplicity" eType="#//cst/MultiplicityDefCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MultiplicityDefCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="lowerBound" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/PrimitiveLiteralExpCS"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="upperBound" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/PrimitiveLiteralExpCS"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingDeclarationCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="qualifiers" unique="false"
upperBound="-1" eType="#//cst/QualifierKindCS"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="contextType" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
eType="#//cst/ParameterDeclarationCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="result" upperBound="-1"
eType="#//cst/ParameterDeclarationCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="directionKindCS" eType="#//cst/DirectionKindCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingExtension" upperBound="-1"
eType="#//cst/MappingExtensionCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isQuery" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ParameterDeclarationCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="typeSpecCS" eType="#//cst/TypeSpecCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="directionKind" eType="#//cst/DirectionKindEnum"
unsettable="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="DirectionKindEnum">
<eLiterals name="DEFAULT"/>
<eLiterals name="in"/>
<eLiterals name="out"/>
<eLiterals name="inout"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SimpleSignatureCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="params" upperBound="-1"
eType="#//cst/ParameterDeclarationCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CompleteSignatureCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleSignature" lowerBound="1"
eType="#//cst/SimpleSignatureCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="resultParams" upperBound="-1"
eType="#//cst/ParameterDeclarationCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingMethodCS" abstract="true" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="blackBox" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingDeclarationCS"
eType="#//cst/MappingDeclarationCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingRuleCS" eSuperTypes="#//cst/MappingMethodCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="guard" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingBody" eType="#//cst/MappingSectionsCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingQueryCS" eSuperTypes="#//cst/MappingMethodCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="expressions" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isSimpleDefinition" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConstructorCS" eSuperTypes="#//cst/MappingMethodCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="expressions" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingSectionCS" abstract="true"
eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode #//cst/ElementWithBody">
<eStructuralFeatures xsi:type="ecore:EReference" name="statements" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingRuleCS" eType="#//cst/MappingRuleCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingInitCS" eSuperTypes="#//cst/MappingSectionCS"/>
<eClassifiers xsi:type="ecore:EClass" name="MappingEndCS" eSuperTypes="#//cst/MappingSectionCS"/>
<eClassifiers xsi:type="ecore:EClass" name="MappingSectionsCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingInitCS" eType="#//cst/MappingInitCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingBodyCS" eType="#//cst/MappingBodyCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingEndCS" eType="#//cst/MappingEndCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StatementCS" abstract="true" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"/>
<eClassifiers xsi:type="ecore:EClass" name="BlockExpCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="bodyExpressions" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ComputeExpCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="returnedElement" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/VariableCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="body" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="WhileExpCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="body" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="resultVar" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/VariableCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ImperativeLoopExpCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/LoopExpCS #//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="condition" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ForExpCS" eSuperTypes="#//cst/ImperativeLoopExpCS"/>
<eClassifiers xsi:type="ecore:EClass" name="ImperativeIterateExpCS" eSuperTypes="#//cst/ImperativeLoopExpCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/VariableCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SwitchExpCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="alternativePart" lowerBound="1"
upperBound="-1" eType="#//cst/SwitchAltExpCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="elsePart" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SwitchAltExpCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="condition" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="body" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="VariableInitializationCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="oclExpressionCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="typeCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="withResult" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"
defaultValueLiteral="false"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AssignStatementCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="lValueCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="oclExpressionCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="incremental" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BreakExpCS" eSuperTypes="#//cst/StatementCS"/>
<eClassifiers xsi:type="ecore:EClass" name="ContinueExpCS" eSuperTypes="#//cst/StatementCS"/>
<eClassifiers xsi:type="ecore:EClass" name="ExpressionStatementCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="oclExpressionCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingBodyCS" eSuperTypes="#//cst/MappingSectionCS">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="hasPopulationKeyword"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ObjectExpCS" eSuperTypes="#//cst/InstantiationExpCS #//cst/ElementWithBody">
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="expressions" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isImplicit" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingCallExpCS" eSuperTypes="#//cst/ImperativeOperationCallExpCS">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="strict" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ImperativeOperationCallExpCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OperationCallExpCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="module" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DirectionKindCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="directionKind" eType="#//cst/DirectionKindEnum"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ElementWithBody" abstract="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="bodyStartLocation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
defaultValueLiteral="0"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="bodyEndLocation" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"
defaultValueLiteral="0"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ResolveExpCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CallExpCS">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="one" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isInverse" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isDeferred" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/VariableCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ResolveInExpCS" eSuperTypes="#//cst/ResolveExpCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="inMappingType" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="inMappingName" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModelTypeCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode #//cst/ElementWithBody">
<eStructuralFeatures xsi:type="ecore:EReference" name="identifierCS" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="complianceKindCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/StringLiteralExpCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="packageRefs" lowerBound="1"
upperBound="-1" eType="#//cst/PackageRefCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="whereStatements" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PackageRefCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="pathNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/PathNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="uriCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/StringLiteralExpCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TransformationHeaderCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="qualifiers" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/StringLiteralExpCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="pathNameCS" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/PathNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
eType="#//cst/ParameterDeclarationCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="moduleUsages" upperBound="-1"
eType="#//cst/ModuleUsageCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="transformationRefineCS"
eType="#//cst/TransformationRefineCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ModuleKindEnum">
<eLiterals name="transformation"/>
<eLiterals name="library" value="1"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModuleKindCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="moduleKind" eType="#//cst/ModuleKindEnum"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModuleRefCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="pathNameCS" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/PathNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
eType="#//cst/ParameterDeclarationCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ImportKindEnum">
<eLiterals name="extension"/>
<eLiterals name="access" value="1"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ModuleUsageCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="importKind" eType="#//cst/ImportKindEnum"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="moduleKindCS" eType="#//cst/ModuleKindCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="moduleRefs" lowerBound="1"
upperBound="-1" eType="#//cst/ModuleRefCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TransformationRefineCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="moduleRefCS" lowerBound="1"
eType="#//cst/ModuleRefCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TypeSpecCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="typeCS" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="simpleNameCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LogExpCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OperationCallExpCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="AssertExpCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="assertion" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="log" eType="#//cst/LogExpCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="severity" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/SimpleNameCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ReturnExpCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingExtensionCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//cst/MappingExtensionKindCS"
defaultValueLiteral="disjuncts"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingIdentifiers" lowerBound="1"
upperBound="-1" eType="#//cst/ScopedNameCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="MappingExtensionKindCS">
<eLiterals name="disjuncts" value="1"/>
<eLiterals name="merges" value="2"/>
<eLiterals name="inherits" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="QualifierKindCS">
<eLiterals name="abstract" value="1"/>
<eLiterals name="blackbox" value="2"/>
<eLiterals name="static" value="3"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InstantiationExpCS" eSuperTypes="#//cst/StatementCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="typeSpecCS" lowerBound="1"
eType="#//cst/TypeSpecCS" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="arguments" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ListTypeCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="typeCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ListLiteralExpCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/LiteralExpCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="collectionLiteralParts"
upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CollectionLiteralPartCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DictionaryTypeCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="key" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DictLiteralExpCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/LiteralExpCS">
<eStructuralFeatures xsi:type="ecore:EReference" name="parts" upperBound="-1"
eType="#//cst/DictLiteralPartCS" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DictLiteralPartCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="key" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/LiteralExpCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TagCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="name" lowerBound="1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/StringLiteralExpCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="scopedNameCS" eType="#//cst/ScopedNameCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="oclExpressionCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="UnitCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="topLevelElements" upperBound="-1"
eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="modules" upperBound="-1"
eType="#//cst/MappingModuleCS" changeable="false" volatile="true" transient="true"
derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="modelTypes" upperBound="-1"
eType="#//cst/ModelTypeCS" changeable="false" volatile="true" transient="true"
derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1"
eType="#//cst/ImportCS" changeable="false" volatile="true" transient="true"
derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ResolveOpArgsExpCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="target" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/VariableCS"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="condition" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/OCLExpressionCS"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ScopedNameCS" eSuperTypes="platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/CSTNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="typeCS" eType="ecore:EClass platform:/plugin/org.eclipse.ocl/model/OCLCST.ecore#//cst/TypeCS"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
</eSubpackages>
</ecore:EPackage>