<?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/1.0/QVTBase" nsPrefix="eqvtb"> | |
<eClassifiers xsi:type="ecore:EClass" name="Domain" abstract="true" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//ENamedElement"> | |
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> | |
<details key="constraints" value="TypedModelExistsWarning
TypedModelDefinedByTransformation
CheckableOrEnforceable

"/> | |
</eAnnotations> | |
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isCheckable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" | |
unsettable="true"/> | |
<eStructuralFeatures xsi:type="ecore:EAttribute" name="isEnforceable" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" | |
unsettable="true"/> | |
<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.emf.ecore/model/Ecore.ecore#//EOperation"> | |
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> | |
<details key="constraints" value="IsSideEffectFree
EveryFunctionParameterIsAFunctionParameter"/> | |
</eAnnotations> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="queryExpression" eType="ecore:EClass ../../org.eclipse.ocl.ecore/model/OCLEcore.ecore#//ecore/OCLExpression" | |
containment="true"/> | |
</eClassifiers> | |
<eClassifiers xsi:type="ecore:EClass" name="FunctionParameter" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//EParameter ../../org.eclipse.ocl.ecore/model/OCLEcore.ecore#//ecore/Variable"/> | |
<eClassifiers xsi:type="ecore:EClass" name="Pattern" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//EModelElement"> | |
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> | |
<details key="constraints" value="NoVariableIsAFunctionParameter"/> | |
</eAnnotations> | |
<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.ecore/model/OCLEcore.ecore#//ecore/Variable"/> | |
</eClassifiers> | |
<eClassifiers xsi:type="ecore:EClass" name="Predicate" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//EModelElement"> | |
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> | |
<details key="constraints" value="ConditionExpressionIsBoolean
ExternalVariablesAreBoundByPattern"/> | |
</eAnnotations> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="conditionExpression" lowerBound="1" | |
eType="ecore:EClass ../../org.eclipse.ocl.ecore/model/OCLEcore.ecore#//ecore/OCLExpression" | |
containment="true"/> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="pattern" lowerBound="1" | |
eType="#//Pattern" transient="true" eOpposite="#//Pattern/predicate"/> | |
</eClassifiers> | |
<eClassifiers xsi:type="ecore:EClass" name="Rule" abstract="true" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//ENamedElement"> | |
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> | |
<details key="constraints" value="OverridesIsCompatible
OverridesDefinedByTransformation
DomainNamesAreUnique
DomainTypedModelsMatchModelParameters"/> | |
</eAnnotations> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="domain" upperBound="-1" | |
eType="#//Domain" containment="true" eOpposite="#//Domain/rule"/> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="overrides" eType="#//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" name="transformation" eType="#//Transformation" | |
transient="true" resolveProxies="false" eOpposite="#//Transformation/rule"/> | |
</eClassifiers> | |
<eClassifiers xsi:type="ecore:EClass" name="Transformation" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EPackage"> | |
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> | |
<details key="constraints" value="WellFormedNsURI
WellFormedNsPrefix
UniqueNsURIs
ExtendsIsAcyclic
ModelParameterNamesAreCompatibleWithExtension
EveryModelParameterUsedPackagesIsCompatibleWithExtension
ModelParameterNamesAreUnique
RuleNamesAreUnique
SynthesizedTypesAreOwned
"/> | |
</eAnnotations> | |
<eOperations name="getFunction" lowerBound="1" eType="#//Function"> | |
<eParameters name="name" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/> | |
</eOperations> | |
<eOperations name="getModelParameter" lowerBound="1" eType="#//TypedModel"> | |
<eParameters name="name" lowerBound="1" eType="ecore:EDataType ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/> | |
</eOperations> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedTag" ordered="false" | |
upperBound="-1" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EAnnotation" | |
containment="true"/> | |
<eStructuralFeatures xsi:type="ecore:EReference" name="modelParameter" upperBound="-1" | |
eType="#//TypedModel" containment="true" eOpposite="#//TypedModel/transformation"/> | |
<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> | |
</eClassifiers> | |
<eClassifiers xsi:type="ecore:EClass" name="TypedModel" eSuperTypes="../../org.eclipse.emf.ecore/model/Ecore.ecore#//ENamedElement"> | |
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore"> | |
<details key="constraints" value="DependsOnIsAcyclic
DependsOnAreModelParameters"/> | |
</eAnnotations> | |
<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" | |
lowerBound="1" upperBound="-1" eType="ecore:EClass ../../org.eclipse.emf.ecore/model/Ecore.ecore#//EPackage"/> | |
<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> | |
</eStructuralFeatures> | |
</eClassifiers> | |
</ecore:EPackage> |