| <?xml version="1.0" encoding="ASCII"?> |
| <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" xmi:id="QVTBase" name="QVTBase" nsURI="http://schema.omg.org/spec/QVT/1.1/qvtbase.xml" nsPrefix="qvtbase"> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Domain" name="Domain" abstract="true"> |
| <eSuperTypes href="EMOF.ecore#EMOF.NamedElement"/> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTBase.Domain.isCheckable" name="isCheckable"> |
| <eType xsi:type="ecore:EDataType" href="EMOF.ecore#PrimitiveTypes.Boolean"/> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTBase.Domain.isEnforceable" name="isEnforceable"> |
| <eType xsi:type="ecore:EDataType" href="EMOF.ecore#PrimitiveTypes.Boolean"/> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Domain.rule" name="rule" lowerBound="1" eType="QVTBase.Rule" transient="true" resolveProxies="false" eOpposite="QVTBase.Rule.domain"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Domain.typedModel" name="typedModel" eType="QVTBase.TypedModel"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Function" name="Function"> |
| <eSuperTypes href="EMOF.ecore#EMOF.Operation"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Function.queryExpression" name="queryExpression" containment="true" resolveProxies="false"> |
| <eType xsi:type="ecore:EClass" href="EssentialOCL.ecore#EssentialOCL.OclExpression"/> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.FunctionParameter" name="FunctionParameter"> |
| <eSuperTypes href="EssentialOCL.ecore#EssentialOCL.Variable"/> |
| <eSuperTypes href="EMOF.ecore#EMOF.Parameter"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Pattern" name="Pattern"> |
| <eSuperTypes href="EMOF.ecore#EMOF.Element"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Pattern.bindsTo" name="bindsTo" ordered="false" upperBound="-1"> |
| <eType xsi:type="ecore:EClass" href="EssentialOCL.ecore#EssentialOCL.Variable"/> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Pattern.predicate" name="predicate" ordered="false" upperBound="-1" eType="QVTBase.Predicate" containment="true" resolveProxies="false" eOpposite="QVTBase.Predicate.pattern"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Predicate" name="Predicate"> |
| <eSuperTypes href="EMOF.ecore#EMOF.Element"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Predicate.conditionExpression" name="conditionExpression" lowerBound="1" containment="true" resolveProxies="false"> |
| <eType xsi:type="ecore:EClass" href="EssentialOCL.ecore#EssentialOCL.OclExpression"/> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Predicate.pattern" name="pattern" lowerBound="1" eType="QVTBase.Pattern" transient="true" resolveProxies="false" eOpposite="QVTBase.Pattern.predicate"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Rule" name="Rule" abstract="true"> |
| <eSuperTypes href="EMOF.ecore#EMOF.NamedElement"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Rule.domain" name="domain" upperBound="-1" eType="QVTBase.Domain" containment="true" resolveProxies="false" eOpposite="QVTBase.Domain.rule"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Rule.overrides" name="overrides" eType="QVTBase.Rule"> |
| <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" xmi:id="QVTBase.Rule.transformation" name="transformation" eType="QVTBase.Transformation" transient="true" resolveProxies="false" eOpposite="QVTBase.Transformation.rule"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Transformation" name="Transformation"> |
| <eSuperTypes href="EMOF.ecore#EMOF.Class"/> |
| <eSuperTypes href="EMOF.ecore#EMOF.Package"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Transformation.extends" name="extends" eType="QVTBase.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" xmi:id="QVTBase.Transformation.modelParameter" name="modelParameter" upperBound="-1" eType="QVTBase.TypedModel" containment="true" resolveProxies="false" eOpposite="QVTBase.TypedModel.transformation"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Transformation.ownedTag" name="ownedTag" ordered="false" upperBound="-1" containment="true" resolveProxies="false"> |
| <eType xsi:type="ecore:EClass" href="EMOF.ecore#EMOF.Tag"/> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Transformation.rule" name="rule" ordered="false" upperBound="-1" eType="QVTBase.Rule" containment="true" resolveProxies="false" eOpposite="QVTBase.Rule.transformation"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.TypedModel" name="TypedModel"> |
| <eSuperTypes href="EMOF.ecore#EMOF.NamedElement"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.TypedModel.dependsOn" name="dependsOn" ordered="false" upperBound="-1" eType="QVTBase.TypedModel"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="dependent"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.TypedModel.transformation" name="transformation" lowerBound="1" eType="QVTBase.Transformation" transient="true" resolveProxies="false" eOpposite="QVTBase.Transformation.modelParameter"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.TypedModel.usedPackage" name="usedPackage" ordered="false" lowerBound="1" upperBound="-1"> |
| <eType xsi:type="ecore:EClass" href="EMOF.ecore#EMOF.Package"/> |
| </eStructuralFeatures> |
| </eClassifiers> |
| </ecore:EPackage> |