| <?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="QVTCore" name="QVTCore" nsURI="http://www.omg.org/spec/QVT/20151201/QVTCore" |
| nsPrefix="qvtcore"> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.Area" name="Area" abstract="true"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.Area.bottomPattern" |
| name="bottomPattern" lowerBound="1" eType="#QVTCore.BottomPattern" containment="true" |
| resolveProxies="false" eOpposite="#QVTCore.BottomPattern.area"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.Area.guardPattern" |
| name="guardPattern" lowerBound="1" eType="#QVTCore.GuardPattern" containment="true" |
| resolveProxies="false" eOpposite="#QVTCore.GuardPattern.area"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.Assignment" name="Assignment" |
| abstract="true" eSuperTypes="EMOF.ecore#EMOF.Element"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.Assignment.bottomPattern" |
| name="bottomPattern" lowerBound="1" eType="#QVTCore.BottomPattern" transient="true" |
| resolveProxies="false" eOpposite="#QVTCore.BottomPattern.assignment"/> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTCore.Assignment.isDefault" |
| name="isDefault" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.Boolean"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.Assignment.value" |
| name="value" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="valueAssignment"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.BottomPattern" name="BottomPattern" |
| eSuperTypes="#QVTCore.CorePattern"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.BottomPattern.area" |
| name="area" lowerBound="1" eType="#QVTCore.Area" transient="true" resolveProxies="false" |
| eOpposite="#QVTCore.Area.bottomPattern"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.BottomPattern.assignment" |
| name="assignment" ordered="false" upperBound="-1" eType="#QVTCore.Assignment" |
| containment="true" resolveProxies="false" eOpposite="#QVTCore.Assignment.bottomPattern"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.BottomPattern.enforcementOperation" |
| name="enforcementOperation" ordered="false" upperBound="-1" eType="#QVTCore.EnforcementOperation" |
| containment="true" resolveProxies="false" eOpposite="#QVTCore.EnforcementOperation.bottomPattern"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.BottomPattern.realizedVariable" |
| name="realizedVariable" ordered="false" upperBound="-1" eType="#QVTCore.RealizedVariable" |
| containment="true" resolveProxies="false" eOpposite="#//RealizedVariable/bottomPattern"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="bottomPattern"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.CoreDomain" name="CoreDomain" |
| eSuperTypes="QVTBase.ecore#QVTBase.Domain #QVTCore.Area"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.CorePattern" name="CorePattern" |
| eSuperTypes="QVTBase.ecore#QVTBase.Pattern"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.CorePattern.variable" |
| name="variable" ordered="false" upperBound="-1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.Variable" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="corePattern"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EEnum" xmi:id="QVTCore.EnforcementMode" name="EnforcementMode"> |
| <eLiterals xmi:id="QVTCore.EnforcementMode.Creation" name="Creation"/> |
| <eLiterals xmi:id="QVTCore.EnforcementMode.Deletion" name="Deletion" value="1"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.EnforcementOperation" name="EnforcementOperation" |
| eSuperTypes="EMOF.ecore#EMOF.Element"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.EnforcementOperation.bottomPattern" |
| name="bottomPattern" lowerBound="1" eType="#QVTCore.BottomPattern" transient="true" |
| resolveProxies="false" eOpposite="#QVTCore.BottomPattern.enforcementOperation"/> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTCore.EnforcementOperation.enforcementMode" |
| name="enforcementMode" eType="#QVTCore.EnforcementMode"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.EnforcementOperation.operationCallExp" |
| name="operationCallExp" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OperationCallExp" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="enforcementOperation"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.GuardPattern" name="GuardPattern" |
| eSuperTypes="#QVTCore.CorePattern"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.GuardPattern.area" |
| name="area" lowerBound="1" eType="#QVTCore.Area" transient="true" resolveProxies="false" |
| eOpposite="#QVTCore.Area.guardPattern"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.Mapping" name="Mapping" eSuperTypes="QVTBase.ecore#QVTBase.Rule #QVTCore.Area"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.Mapping.context" |
| name="context" eType="#QVTCore.Mapping" transient="true" resolveProxies="false" |
| eOpposite="#QVTCore.Mapping.local"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.Mapping.local" |
| name="local" ordered="false" upperBound="-1" eType="#QVTCore.Mapping" containment="true" |
| resolveProxies="false" eOpposite="#QVTCore.Mapping.context"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.Mapping.refinement" |
| name="refinement" ordered="false" upperBound="-1" eType="#QVTCore.Mapping" |
| eOpposite="#QVTCore.Mapping.specification"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.Mapping.specification" |
| name="specification" ordered="false" upperBound="-1" eType="#QVTCore.Mapping" |
| eOpposite="#QVTCore.Mapping.refinement"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.PropertyAssignment" name="PropertyAssignment" |
| eSuperTypes="#QVTCore.Assignment"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.PropertyAssignment.slotExpression" |
| name="slotExpression" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="slotAssignment"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.PropertyAssignment.targetProperty" |
| name="targetProperty" lowerBound="1" eType="ecore:EClass EMOF.ecore#EMOF.Property"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="assignment"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.RealizedVariable" name="RealizedVariable" |
| eSuperTypes="EssentialOCL.ecore#EssentialOCL.Variable"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="bottomPattern" lowerBound="1" |
| eType="#QVTCore.BottomPattern" transient="true" resolveProxies="false" eOpposite="#QVTCore.BottomPattern.realizedVariable"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="QVTCore.VariableAssignment" name="VariableAssignment" |
| eSuperTypes="#QVTCore.Assignment"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTCore.VariableAssignment.targetVariable" |
| name="targetVariable" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.Variable"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="assignment"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| </ecore:EPackage> |