blob: 28e84ea1f85ce445e833a8f83bb948a62bd44e6d [file] [log] [blame]
<?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/20140401/QVTBase"
nsPrefix="qvtbase">
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Domain" name="Domain" abstract="true"
eSuperTypes="EMOF.ecore#EMOF.NamedElement">
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTBase.Domain.isCheckable"
name="isCheckable" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.Boolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTBase.Domain.isEnforceable"
name="isEnforceable" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.Boolean"/>
<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">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="domain"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Function" name="Function"
eSuperTypes="EMOF.ecore#EMOF.Operation">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Function.queryExpression"
name="queryExpression" 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="function"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.FunctionParameter" name="FunctionParameter"
eSuperTypes="EssentialOCL.ecore#EssentialOCL.Variable EMOF.ecore#EMOF.Parameter"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTBase.Pattern" name="Pattern" eSuperTypes="EMOF.ecore#EMOF.Element">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Pattern.bindsTo"
name="bindsTo" ordered="false" upperBound="-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="pattern"/>
</eAnnotations>
</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="EMOF.ecore#EMOF.Element">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Predicate.conditionExpression"
name="conditionExpression" 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="predicate"/>
</eAnnotations>
</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="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="overridden"/>
</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="EMOF.ecore#EMOF.Class 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" ordered="false" upperBound="-1" eType="#QVTBase.TypedModel"
containment="true" resolveProxies="false" eOpposite="#QVTBase.TypedModel.transformation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="transformation"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTBase.Transformation.ownedTag"
name="ownedTag" ordered="false" upperBound="-1" eType="ecore:EClass EMOF.ecore#EMOF.Tag"
containment="true" resolveProxies="false">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="transformation"/>
</eAnnotations>
</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="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="ecore:EClass EMOF.ecore#EMOF.Package">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="typedModel"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
</ecore:EPackage>