| <?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="qvtbase" nsURI="http://www.eclipse.org/qvt/2015/QVTbase" nsPrefix="qvtb"> |
| <eClassifiers xsi:type="ecore:EClass" name="BaseModel" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Model"/> |
| <eClassifiers xsi:type="ecore:EClass" name="CompoundTargetElement" eSuperTypes="#//TargetElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="ownedTargetElements" lowerBound="2" |
| upperBound="-1" eType="#//SimpleTargetElement" containment="true"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Domain" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-NamedElement ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-ReferringElement"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="isCheckable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" |
| unsettable="true"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="A checkable domain may be selected as the target of a transformation in check mode. An enforceable domain is always checkable. A not-checkable domain cannot be selected as the target of a transformation. See Bug 549776.See Bug 549776."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="isEnforceable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" |
| unsettable="true"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="An enforceable domain may be selected as the target of a transformation in check or enforce mode. An enforceable domain is always checkable. A not-checkable domain cannot be selected as the target of a transformation. See Bug 549776."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="rule" lowerBound="1" eType="#//Rule" |
| transient="true" eOpposite="#//Rule/domain"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="typedModel" eType="#//TypedModel"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Function" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Operation"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="queryExpression" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-OCLExpression" |
| volatile="true" transient="true" derived="true" resolveProxies="false"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="FunctionBody" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-ExpressionInOCL"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="FunctionBody refines ExpressionInOCL to avoid the inconvenience of a timely setType() by deriving the type from the bodyExpression. See Bug 481664."/> |
| </eAnnotations> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="FunctionParameter" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Parameter"/> |
| <eClassifiers xsi:type="ecore:EClass" name="Pattern" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Element"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="predicate" ordered="false" |
| upperBound="-1" eType="#//Predicate" containment="true" eOpposite="#//Predicate/pattern"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="bindsTo" ordered="false" |
| upperBound="-1" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Variable"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Predicate" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Element"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="conditionExpression" lowerBound="1" |
| eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-OCLExpression" |
| containment="true"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="predicate"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="pattern" lowerBound="1" |
| eType="#//Pattern" transient="true" eOpposite="#//Pattern/predicate"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="predicate"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Rule" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-NamedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="domain" upperBound="-1" |
| eType="#//Domain" containment="true" eOpposite="#//Domain/rule"/> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="isAbstract" eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Boolean" |
| defaultValueLiteral="false"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="overridden" ordered="false" |
| eType="#//Rule" eOpposite="#//Rule/overrides"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="overriden"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="overrides" upperBound="-1" |
| eType="#//Rule" eOpposite="#//Rule/overridden"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="transformation" eType="#//Transformation" |
| transient="true" resolveProxies="false" eOpposite="#//Transformation/rule"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="SimpleTargetElement" eSuperTypes="#//TargetElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="typedModel" ordered="false" |
| lowerBound="1" eType="#//TypedModel"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="iterates" ordered="false" |
| upperBound="-1" eType="#//TypedModel"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="The set of typed models whose elements are also part of this TypedModel. An input TypedModel that iterates an output TypedModel specfies a fixed point iteration."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" lowerBound="1" eType="#//TargetElementKind"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="Target" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-NamedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="owningTransformation" lowerBound="1" |
| eType="#//Transformation" transient="true" eOpposite="#//Transformation/ownedTargets"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="ownedTargetElements" ordered="false" |
| lowerBound="2" upperBound="-1" eType="#//TargetElement" containment="true"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="TargetElement" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Element"/> |
| <eClassifiers xsi:type="ecore:EClass" name="Transformation" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Class"> |
| <eOperations name="getFunction" lowerBound="1" eType="#//Function"> |
| <eParameters name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> |
| </eOperations> |
| <eOperations name="getModelParameter" lowerBound="1" eType="#//TypedModel"> |
| <eParameters name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> |
| </eOperations> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="ownedTag" ordered="false" |
| upperBound="-1" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Annotation" |
| containment="true"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="modelParameter" upperBound="-1" |
| eType="#//TypedModel" containment="true" eOpposite="#//TypedModel/transformation"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="ownedTargets" ordered="false" |
| upperBound="-1" eType="#//Target" containment="true" eOpposite="#//Target/owningTransformation"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="dependent"/> |
| </eAnnotations> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="The set of typed models that need to be checked/enforced before this TypedModel can be checked/enforced."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="rule" ordered="false" upperBound="-1" |
| eType="#//Rule" containment="true" eOpposite="#//Rule/transformation"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="extends" eType="#//Transformation"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="extendedBy"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="ownedContext" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Parameter" |
| containment="true"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" name="TypedModel" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-NamedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="transformation" lowerBound="1" |
| eType="#//Transformation" transient="true" eOpposite="#//Transformation/modelParameter"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="usedPackage" ordered="false" |
| upperBound="-1" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Package"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" ordered="false" |
| upperBound="-1" eType="#//TypedModel"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="dependent"/> |
| </eAnnotations> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="The set of typed models that need to be checked/enforced before this TypedModel can be checked/enforced."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="ownedContext" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Parameter" |
| containment="true"/> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="isPrimitive" lowerBound="1" |
| eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Boolean" |
| defaultValueLiteral="false"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="The TypedModel is for a primitive domain. It may be added automatically."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="isThis" lowerBound="1" |
| eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Boolean" |
| defaultValueLiteral="false"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="The TypedModel is for the transformation instance trace. It may be added automatically."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" name="isTrace" lowerBound="1" |
| eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Boolean" |
| defaultValueLiteral="false"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="The TypedModel is for the execution trace. It may be added automatically."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="iterates" ordered="false" |
| upperBound="-1" eType="#//TypedModel"> |
| <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel"> |
| <details key="documentation" value="The set of typed models whose elements are also part of this TypedModel. An input TypedModel that iterates an output TypedModel specfies a fixed point iteration."/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EEnum" name="TargetElementKind"> |
| <eLiterals name="INPUT"/> |
| <eLiterals name="VIA"/> |
| <eLiterals name="OUTPUT"/> |
| </eClassifiers> |
| </ecore:EPackage> |