blob: 89a7dd1ccafce4024bc639fac18255ec81b29bf9 [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="QVTOperational"
name="QVTOperational" nsURI="http://schema.omg.org/spec/QVT/1.1/qvtoperational.xml"
nsPrefix="qvto">
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.Constructor" name="Constructor"
eSuperTypes="#QVTOperational.ImperativeOperation"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ConstructorBody" name="ConstructorBody"
eSuperTypes="#QVTOperational.OperationBody"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ContextualProperty"
name="ContextualProperty" eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Property">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ContextualProperty.context"
name="context" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Class"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ContextualProperty.initExpression"
name="initExpression" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OclExpression"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="ownerProperty"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ContextualProperty.overridden"
name="overridden" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Property">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="overriding"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" xmi:id="QVTOperational.DirectionKind" name="DirectionKind">
<eLiterals xmi:id="QVTOperational.DirectionKind.in" name="in"/>
<eLiterals xmi:id="QVTOperational.DirectionKind.inout" name="inout" value="1"/>
<eLiterals xmi:id="QVTOperational.DirectionKind.out" name="out" value="2"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.EntryOperation" name="EntryOperation"
eSuperTypes="#QVTOperational.ImperativeOperation"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.Helper" name="Helper"
eSuperTypes="#QVTOperational.ImperativeOperation">
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.Helper.isQuery"
name="isQuery" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.Boolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ImperativeCallExp"
name="ImperativeCallExp" eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OperationCallExp platform:/plugin/org.eclipse.m2m.qvt.oml.emof.imperativeocl/model/ImperativeOCL.ecore#ImperativeOCL.ImperativeExpression">
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.ImperativeCallExp.isVirtual"
name="isVirtual" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.Boolean"
defaultValueLiteral="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ImperativeOperation"
name="ImperativeOperation" eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Operation">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ImperativeOperation.body"
name="body" eType="#QVTOperational.OperationBody" containment="true" eOpposite="#QVTOperational.OperationBody.operation"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ImperativeOperation.context"
name="context" eType="#QVTOperational.VarParameter" containment="true" eOpposite="#QVTOperational.VarParameter.ctxOwner"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.ImperativeOperation.isBlackbox"
name="isBlackbox" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.Boolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ImperativeOperation.overridden"
name="overridden" eType="#QVTOperational.ImperativeOperation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="overriding"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ImperativeOperation.result"
name="result" upperBound="-1" eType="#QVTOperational.VarParameter" containment="true"
eOpposite="#QVTOperational.VarParameter.resOwner"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" xmi:id="QVTOperational.ImportKind" name="ImportKind">
<eLiterals xmi:id="QVTOperational.ImportKind.extension" name="extension"/>
<eLiterals xmi:id="QVTOperational.ImportKind.access" name="access" value="1"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.Library" name="Library"
eSuperTypes="#QVTOperational.Module"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.MappingBody" name="MappingBody"
eSuperTypes="#QVTOperational.OperationBody">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingBody.endSection"
name="endSection" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OclExpression"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="endOwner"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingBody.initSection"
name="initSection" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OclExpression"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="initOwner"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.MappingCallExp" name="MappingCallExp"
eSuperTypes="#QVTOperational.ImperativeCallExp">
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.MappingCallExp.isStrict"
name="isStrict" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.Boolean"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.MappingOperation" name="MappingOperation"
eSuperTypes="#QVTOperational.ImperativeOperation">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingOperation.disjunct"
name="disjunct" upperBound="-1" eType="#QVTOperational.MappingOperation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="disjuncter"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingOperation.inherited"
name="inherited" upperBound="-1" eType="#QVTOperational.MappingOperation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="inheriting"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingOperation.merged"
name="merged" upperBound="-1" eType="#QVTOperational.MappingOperation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="merging"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingOperation.refinedRelation"
name="refinedRelation" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.qvtrelation/model/QVTRelation.ecore#QVTRelation.Relation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="refiningOperation"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingOperation.when"
name="when" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OclExpression"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="whenOwner"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingOperation.where"
name="where" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OclExpression"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="whereOwner"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.MappingParameter" name="MappingParameter"
eSuperTypes="#QVTOperational.VarParameter">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingParameter.extent"
name="extent" eType="#QVTOperational.ModelParameter"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.MappingParameter.referredDomain"
name="referredDomain" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.qvtrelation/model/QVTRelation.ecore#QVTRelation.RelationDomain">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="referringParameter"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ModelParameter" name="ModelParameter"
eSuperTypes="#QVTOperational.VarParameter"/>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ModelType" name="ModelType"
eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Class">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ModelType.additionalCondition"
name="additionalCondition" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OclExpression"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="condOwner"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.ModelType.conformanceKind"
name="conformanceKind" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.String"
defaultValueLiteral="effective"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ModelType.metamodel"
name="metamodel" lowerBound="1" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Package"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.Module" name="Module"
eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Class platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Package">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.Module.configProperty"
name="configProperty" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Property"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.Module.entry"
name="entry" eType="#QVTOperational.EntryOperation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="entryContext"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.Module.isBlackbox"
name="isBlackbox" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.Boolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.Module.moduleImport"
name="moduleImport" upperBound="-1" eType="#QVTOperational.ModuleImport" containment="true"
eOpposite="#QVTOperational.ModuleImport.module"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.Module.ownedTag"
name="ownedTag" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Tag"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="owner"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.Module.ownedVariable"
name="ownedVariable" ordered="false" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.Variable"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="variableOwner"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.Module.usedModelType"
name="usedModelType" upperBound="-1" eType="#QVTOperational.ModelType"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ModuleImport" name="ModuleImport"
eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Element">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ModuleImport.binding"
name="binding" upperBound="-1" eType="#QVTOperational.ModelType"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ModuleImport.importedModule"
name="importedModule" lowerBound="1" eType="#QVTOperational.Module">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="importingElement"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.ModuleImport.kind"
name="kind" eType="#QVTOperational.ImportKind"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ModuleImport.module"
name="module" eType="#QVTOperational.Module" transient="true" eOpposite="#QVTOperational.Module.moduleImport"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ObjectExp" name="ObjectExp"
eSuperTypes="platform:/plugin/org.eclipse.m2m.qvt.oml.emof.imperativeocl/model/ImperativeOCL.ecore#ImperativeOCL.InstantiationExp">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ObjectExp.body"
name="body" lowerBound="1" eType="#QVTOperational.ConstructorBody" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ObjectExp.referredObject"
name="referredObject" lowerBound="1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.Variable">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="objectExpression"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.OperationBody" name="OperationBody"
eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Element">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.OperationBody.content"
name="content" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OclExpression"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="contentOwner"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.OperationBody.operation"
name="operation" eType="#QVTOperational.ImperativeOperation" transient="true"
eOpposite="#QVTOperational.ImperativeOperation.body"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.OperationBody.variable"
name="variable" ordered="false" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.Variable"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="opBody"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.OperationalTransformation"
name="OperationalTransformation" eSuperTypes="#QVTOperational.Module">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.OperationalTransformation.intermediateClass"
name="intermediateClass" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Class">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="transfClient"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.OperationalTransformation.intermediateProperty"
name="intermediateProperty" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Property">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="tranfClient"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.OperationalTransformation.modelParameter"
name="modelParameter" upperBound="-1" eType="#QVTOperational.ModelParameter"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="module"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.OperationalTransformation.refined"
name="refined" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.qvtrelation/model/QVTRelation.ecore#QVTRelation.RelationalTransformation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="refinement"/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.OperationalTransformation.relation"
name="relation" upperBound="-1" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.qvtrelation/model/QVTRelation.ecore#QVTRelation.Relation"
containment="true">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="owner"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ResolveExp" name="ResolveExp"
eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.CallExp platform:/plugin/org.eclipse.m2m.qvt.oml.emof.imperativeocl/model/ImperativeOCL.ecore#ImperativeOCL.ImperativeExpression">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ResolveExp.condition"
name="condition" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.OclExpression"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.ResolveExp.isDeferred"
name="isDeferred" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.Boolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.ResolveExp.isInverse"
name="isInverse" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.Boolean"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.ResolveExp.one"
name="one" eType="ecore:EDataType platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#PrimitiveTypes.Boolean"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ResolveExp.target"
name="target" eType="ecore:EClass platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.Variable"
containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.ResolveInExp" name="ResolveInExp"
eSuperTypes="#QVTOperational.ResolveExp">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.ResolveInExp.inMapping"
name="inMapping" eType="#QVTOperational.MappingOperation">
<eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName">
<details key="body" value="resolveExpression"/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" xmi:id="QVTOperational.VarParameter" name="VarParameter"
eSuperTypes="platform:/plugin/org.eclipse.qvt.declarative.emof.essentialocl/model/EssentialOCL.ecore#EssentialOCL.Variable platform:/plugin/org.eclipse.qvt.declarative.emof.emof/model/EMOF.ecore#EMOF.Parameter">
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.VarParameter.ctxOwner"
name="ctxOwner" eType="#QVTOperational.ImperativeOperation" transient="true"
eOpposite="#QVTOperational.ImperativeOperation.context"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="QVTOperational.VarParameter.kind"
name="kind" eType="#QVTOperational.DirectionKind"/>
<eStructuralFeatures xsi:type="ecore:EReference" xmi:id="QVTOperational.VarParameter.resOwner"
name="resOwner" eType="#QVTOperational.ImperativeOperation" transient="true"
eOpposite="#QVTOperational.ImperativeOperation.result"/>
</eClassifiers>
</ecore:EPackage>