blob: 95ed95a123db2eaab15820f3403808620bb758d2 [file] [log] [blame]
<?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="qvtschedule" nsURI="http://www.eclipse.org/qvt/2017/QVTschedule"
nsPrefix="qvts">
<eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
<details key="invocationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
<details key="settingDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
<details key="validationDelegates" value="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"/>
</eAnnotations>
<eClassifiers xsi:type="ecore:EClass" name="AbstractDatum" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An AbstractDatum identifies a typed information element produced by one or more regions and consumed by one or more usually other regions.&#xA;Derived Datum classes provide the informaion type which in combination with the TypedModelfully identifies information in noth endogeneous and exogeneous transformations."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ArgumentEdge" abstract="true" eSuperTypes="#//ExpressionEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An ArgumentEdge conveys an expression input to an iteration/operation/pseudo-operation."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BasicPartition" eSuperTypes="#//MappingPartition">
<eStructuralFeatures xsi:type="ecore:EReference" name="constantEdges" ordered="false"
upperBound="-1" eType="#//Edge"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="constantNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="constantSuccessFalseNodes"
ordered="false" upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="constantSuccessTrueNodes"
ordered="false" upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="explicitPredecessors" ordered="false"
upperBound="-1" eType="#//MappingPartition" eOpposite="#//MappingPartition/explicitSuccessors"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="headNodes" lowerBound="1"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="loadedEdges" ordered="false"
upperBound="-1" eType="#//Edge"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="loadedNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="predicatedEdges" ordered="false"
upperBound="-1" eType="#//Edge"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="predicatedNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="realizedEdges" ordered="false"
upperBound="-1" eType="#//Edge"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="realizedNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="speculatedEdges" ordered="false"
upperBound="-1" eType="#//Edge"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="speculatedNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="speculationNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningMergedPartition"
eType="#//MergedPartition" eOpposite="#//MergedPartition/ownedMergedPartitions"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="BooleanLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A BooleanLiteralNode supports a Boolean literal value in a QVTs graph."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="booleanValue" lowerBound="1"
eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Boolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The Boolean literal value."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CastEdge" eSuperTypes="#//Edge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A CastEdge is temporaily created to model an oclAsType, but is rewritten once all casts are visible."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredClassDatum" lowerBound="1"
eType="#//ClassDatum" transient="true" derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ClassDatum" eSuperTypes="#//AbstractDatum">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A ClassDatum identifies a Class-typed object produced by one or more regions and consumed by one or more usually other regions. The object is passed by reference, possibly within a Connection."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="completeClasses" upperBound="-1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-CompleteClass"
transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedPropertyDatums" upperBound="-1"
eType="#//PropertyDatum" containment="true" eOpposite="#//PropertyDatum/owningClassDatum"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningScheduleModel" lowerBound="1"
eType="#//ScheduleModel" eOpposite="#//ScheduleModel/ownedClassDatums">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The overall ScheduleModel in which this ClassDatum is contained."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredClass" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Class"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredTypedModel" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.qvtd.pivot.qvtbase/model/QVTbase.ecore#T-qvtbase-TypedModel">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The TypedModel for which this Datum provides an information element. For endogeneous transformations multiple Datums with distinct TypedModels may exist for the same Class."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="superClassDatums" upperBound="-1"
eType="#//ClassDatum" transient="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Cluster" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-NamedElement #//Symbolable">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A Cluster is a sub-graph with Nodes and Edges in the graphical representation of a Rule. A cluster identifies a sub-Region with uniform scheduling treatment."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningRegion" lowerBound="1"
eType="#//Region" eOpposite="#//Region/ownedClusters"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="memberNodes" upperBound="-1"
eType="#//Node" eOpposite="#//Node/cluster"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="memberEdges" upperBound="-1"
eType="#//Edge" eOpposite="#//Edge/cluster"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="precedingClusters" upperBound="-1"
eType="#//Cluster" eOpposite="#//Cluster/succeedingClusters"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="succeedingClusters" upperBound="-1"
eType="#//Cluster" eOpposite="#//Cluster/precedingClusters"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="depth" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EIntegerObject"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionClassDatum" eSuperTypes="#//ClassDatum">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A CollectionClassDatum identifies a Collection of Class-typed objects produced by one or more regions and consumed by one or more usually other regions. The collection is passed by reference, possibly within a Connection."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="elementalClassDatum" eType="#//ClassDatum"
transient="true" derived="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A CollectionLiteralNode supports the construction of a collection from its CollectionPartEdge parts."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionPartEdge" eSuperTypes="#//ArgumentEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A CollectionPartEdge conveys collection part to a collection construction node."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredPart" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-CollectionLiteralPart">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Collection item lor range for a collection construction."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CollectionRangeNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A CollectionRangeNode supports the aggregation of a collection range first and last as a single node for use as a CollectionPartEdge source."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ComposedNode" eSuperTypes="#//Node"/>
<eClassifiers xsi:type="ecore:EClass" name="CompositePartition" abstract="true"
eSuperTypes="#//Partition">
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedMappingPartitions"
upperBound="-1" eType="#//MappingPartition" containment="true" eOpposite="#//MappingPartition/owningCompositePartition"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Connection" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Element #//Symbolable">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A Connection establishes that one or more source edges/nodes are available for use by one or more target edges/nodes.&#xD;&#xA;Derivations refine the availability to edges or nodes, pass by value, optional existence or mandatory existence."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningRootRegion" lowerBound="1"
eType="#//RootRegion" eOpposite="#//RootRegion/ownedConnections"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="connectionRole" lowerBound="1"
eType="#//ConnectionRole" defaultValueLiteral="UNDEFINED"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="sourceEnds" ordered="false"
upperBound="-1" eType="#//ConnectionEnd">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The Rule represented by this RuleRegion."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="intermediatePartitions"
ordered="false" upperBound="-1" eType="#//Partition">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The partitions other than the common, source and target partitions through which the Connection is passed."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="commonPartition" ordered="false"
eType="#//Partition">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The partition that manages the data structures for the Connection."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ConnectionEnd" abstract="true" interface="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A ConnectionEnd may be the Node/Edge at the end of a NodeConnection/EdgeConnection."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CyclicMappingRegion" eSuperTypes="#//MappingRegion">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A CyclicMappingRegion provides a graphical representation of an executable micro-mapping that encapsulates a cycle of one or more mapping regions as an (externally) acyclic mapping region."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="elementRegions" lowerBound="1"
upperBound="-1" eType="#//MappingRegion"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="CyclicPartition" eSuperTypes="#//CompositePartition #//MappingPartition"/>
<eClassifiers xsi:type="ecore:EClass" name="DependencyEdge" eSuperTypes="#//Edge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A DependencyEdge instantiates the dependencies of an operation in its caller."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="DependencyNode" eSuperTypes="#//Node"/>
<eClassifiers xsi:type="ecore:EClass" name="DispatchRegion" eSuperTypes="#//RuleRegion">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A DispatchRegion provides a graphical representation of an executable mapping that dispatches a hierrachy of QVTr Relations"/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredRuleRegion" lowerBound="1"
eType="#//RuleRegion">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The Rule represented by this RuleRegion."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Edge" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Element">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An edge is directed and abstracts any Node interconnection within a Region."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="cluster" eType="#//Cluster"
eOpposite="#//Cluster/memberEdges"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="edgeRole" lowerBound="1"
eType="#//Role"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningRegion" lowerBound="1"
eType="#//Region" eOpposite="#//Region/ownedEdges"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="sourceNode" lowerBound="1"
eType="#//Node" eOpposite="#//Node/outgoingEdges"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetNode" lowerBound="1"
eType="#//Node" eOpposite="#//Node/incomingEdges"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="utility" lowerBound="1"
eType="#//Utility" defaultValueLiteral="NOT_KNOWN"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="EdgeConnection" eSuperTypes="#//Connection">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An EdgeConnection supports an existence dependency between the region(s) that produce a navigation edge&#xD;&#xA;and the region(s) that consume it."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredProperty" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Property"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mandatoryTargetEdges" ordered="false"
upperBound="-1" eType="#//NavigableEdge"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="preferredTargetEdges" ordered="false"
upperBound="-1" eType="#//NavigableEdge"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="EnumLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An EnumLiteralNode supports an enumeration literal value in a QVTs graph."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="enumValue" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-EnumerationLiteral">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The enumeration value for the enum literal."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ErrorNode" eSuperTypes="#//MappingNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An ErrorNode provides a place holder for failed value in a QVTs graph."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ExpressionEdge" abstract="true" eSuperTypes="#//Edge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An ExpressionEdge conveys asource value to a target value, possibly manipulating the value en route, more often just identifying distinct inputs to the target."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IfNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An IfNode supports the use of an if condition, then and else first and last as an OperationNode."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="IncludesEdge" eSuperTypes="#//ExpressionEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An IncludesEdge identifoes that a tagretNode is apart of a source collection node."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="InputNode" eSuperTypes="#//Node"/>
<eClassifiers xsi:type="ecore:EClass" name="IteratedEdge" eSuperTypes="#//Edge"/>
<eClassifiers xsi:type="ecore:EClass" name="IteratorNode" eSuperTypes="#//VariableNode"/>
<eClassifiers xsi:type="ecore:EClass" name="KeyPartEdge" eSuperTypes="#//NavigationEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A KeyPartEdge conveys a key part key and value to a keyed value construction node."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredPart" lowerBound="1"
eType="#//PropertyDatum">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="PropertyDatum for a keyed value construction."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="KeyedValueNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A KeyedValueNode supports a globally unique value in a QVTs graph; repeated 'realizations' share the one value."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="classDatumValue" lowerBound="1"
eType="#//ClassDatum">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The type and typed model of the unique value."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LoadingPartition" eSuperTypes="#//MappingPartition">
<eStructuralFeatures xsi:type="ecore:EReference" name="referredLoadingRegion"
lowerBound="1" eType="#//LoadingRegion" eOpposite="#//LoadingRegion/loadingPartition"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="LoadingRegion" eSuperTypes="#//Region">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A LoadingRegion provides a graphical representation of the model elements to be loaded from input models."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="loadingPartition" lowerBound="1"
eType="#//LoadingPartition" eOpposite="#//LoadingPartition/referredLoadingRegion"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningRootRegion" lowerBound="1"
eType="#//RootRegion" eOpposite="#//RootRegion/ownedLoadingRegion"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="targetName" eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-String">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The name of the NamedElement."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MapLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A MapLiteralNode supports the construction of a map from its MapPartEdge parts."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MapPartEdge" eSuperTypes="#//ArgumentEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A MapPartEdge conveys a map part key and value to a map construction node."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredPart" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-MapLiteralPart">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Map Part for a map construction."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MapPartNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A MapPartNode supports the aggregation of a map part key and value as a single node for use as a MapPartEdge source."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingNode" abstract="true" eSuperTypes="#//Node">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A MappingNode may contribute to a MappingRegion in a QBTs graph."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingPartition" abstract="true" eSuperTypes="#//Partition">
<eStructuralFeatures xsi:type="ecore:EReference" name="owningCompositePartition"
eType="#//CompositePartition" eOpposite="#//CompositePartition/ownedMappingPartitions"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referedMappingRegion" eType="#//MappingRegion"
eOpposite="#//MappingRegion/mappingPartitions"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="region" eType="#//Region"
changeable="false" volatile="true" transient="true" derived="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="explicitSuccessors" ordered="false"
upperBound="-1" eType="#//BasicPartition" eOpposite="#//BasicPartition/explicitPredecessors"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MappingRegion" abstract="true" eSuperTypes="#//Region">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A MappingRegion provides a graphical representation of an executable mapping."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="headNodes" upperBound="-1"
eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="mappingPartitions" upperBound="-1"
eType="#//MappingPartition" eOpposite="#//MappingPartition/referedMappingRegion"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningScheduleModel" eType="#//ScheduleModel"
eOpposite="#//ScheduleModel/ownedMappingRegions">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The overall ScheduleModel in which this MappingRegion is contained."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="MergedPartition" eSuperTypes="#//BasicPartition">
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedMergedPartitions"
upperBound="-1" eType="#//BasicPartition" containment="true" eOpposite="#//BasicPartition/owningMergedPartition"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="NavigableEdge" abstract="true" eSuperTypes="#//Edge #//ConnectionEnd">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A NavigableEdge is directed and abstracts any type-based relationship as a Node to Node interconnection within a Region."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="incomingConnection" eType="#//EdgeConnection"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="outgoingConnections" upperBound="-1"
eType="#//EdgeConnection"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="NavigationEdge" eSuperTypes="#//NavigableEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A NavigationEdge supports the directed Property-based relationship between Nodes within a Region."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="oppositeEdge" eType="#//NavigationEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Non-null if this edge is part of a bidirectional pair."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="partial" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="True if this edge is a partial many-to-one relationship."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredProperty" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Property"
transient="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The property to navigate from source to target."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="secondary" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="True if this edge is the auto-created second half of a bidirectional pair."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Node" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Element #//ConnectionEnd">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="AbstractNode provides the analysis and status of a node in the pattern match or construction of a Mapping&#xD;&#xA;or Composite Region."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="classDatum" lowerBound="1"
eType="#//ClassDatum">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Non-null if this edge is part of a bidirectional pair."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="cluster" eType="#//Cluster"
eOpposite="#//Cluster/memberNodes"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="incomingConnection" eType="#//NodeConnection"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="incomingEdges" upperBound="-1"
eType="#//Edge" eOpposite="#//Edge/targetNode"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="nodeRole" lowerBound="1"
eType="#//Role"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="outgoingConnections" upperBound="-1"
eType="#//NodeConnection"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="outgoingEdges" upperBound="-1"
eType="#//Edge" eOpposite="#//Edge/sourceNode"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningRegion" lowerBound="1"
eType="#//Region" eOpposite="#//Region/ownedNodes"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="utility" lowerBound="1"
eType="#//Utility" defaultValueLiteral="NOT_KNOWN"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="NodeConnection" eSuperTypes="#//Connection">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A NodeConnection supports a data connection from one or more source nodes to one or more target nodes.&#xD;&#xA;The data connection has a data type for the elemental value transfer through the connection.&#xD;&#xA;A passed connection may be realized by a simple transient point-to-point linkage or&#xD;&#xA;a full buffer that accumulates all possible values. A used connection is not actually realized; it just ensures that&#xD;&#xA;all source values exist before any target value consumes the value recomputed at the target."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="classDatum" lowerBound="1"
eType="#//ClassDatum">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Non-null if this edge is part of a bidirectional pair."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="mandatoryTargetNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="passedTargetNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="preferredTargetNodes" ordered="false"
upperBound="-1" eType="#//Node"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="NonPartition" eSuperTypes="#//MappingPartition"/>
<eClassifiers xsi:type="ecore:EClass" name="NullLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A NullLiteralNode supports a null literal value in a QVTs graph."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="NumericLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A StringLiteralNode supports a String literal value in a QVTs graph."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="numericValue" lowerBound="1"
eType="#//Number">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The numeric literal value."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OperationCallNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An OPerationNode supports the invocation of an operation/iteratioon using its OperationSelfEdge/OperationParameterEdge parts."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredOperation" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Operation"
transient="true">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The Operation that this OperationCallNode uses."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OperationNode" abstract="true" eSuperTypes="#//MappingNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An OperationNode supports a computed value in a QVTs graph.\nDerived literal OperationNodes are computed from their internal state. \nDerived algorithmic OperationNodes use one or more ArgumentEdges to provide computation inputs."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OperationRegion" eSuperTypes="#//Region">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An OperationRegion provides a graphical representation of the dependencies of an Operation(or Function)."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="dependencyNodes" upperBound="-1"
eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="headNodes" upperBound="-1"
eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredOperation" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Operation">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The Operation represented by this OperationRegion."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="resultNode" eType="#//Node"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningScheduleModel" lowerBound="1"
eType="#//ScheduleModel" eOpposite="#//ScheduleModel/ownedOperationRegions">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The overall ScheduleModel in which this OperationRegion is contained."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OperationParameterEdge" eSuperTypes="#//ArgumentEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An OperationParameterEdge conveys an operation/iteration source/argument to an operation/iteration node. Pseudo-operations support if()/loop() arguments."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredParameter" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Parameter">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Parameter for which this OperationParameterEdge conveys the argument. For a multi-parameter, parameterIndex disambiguates."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="parameterIndex" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt" defaultValueLiteral="-1">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Disambiguating index when the referredParameter is a collection. -1 when referredParameter is not a Collection."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="OperationSelfEdge" eSuperTypes="#//ArgumentEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An OperationSelfEdge conveys an operation/iteration source type to an operation/iteration node."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredType" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Type">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Type for an OperationSelfEdge conveying a self source to an operation/iteration."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Partition" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-NamedElement">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A Partion is a sub-sub-graph with selected Nodes and Edges in the graphical representation of a Rule. Derived Partitions provide distinct forms of execution semantics."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="passes" upperBound="-1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="intermediateConnections"
ordered="false" upperBound="-1" eType="#//NodeConnection">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The connections propagated as middle guards from a hosted by a parent partition and to one or more child partitions."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="rootConnections" ordered="false"
upperBound="-1" eType="#//NodeConnection">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The connections hosted by this partition and passed to child partitions."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PatternTypedNode" eSuperTypes="#//MappingNode"/>
<eClassifiers xsi:type="ecore:EClass" name="PatternVariableNode" eSuperTypes="#//VariableNode"/>
<eClassifiers xsi:type="ecore:EClass" name="PredicateEdge" eSuperTypes="#//Edge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A not-partial PredicateEdge requires source and target nodes to have the same identity/value. A partial PredicateEdge requires target node identity/value to be one of the source node identity/values."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="partial" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="True if this edge is a partial many-to-one relationship."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="PropertyDatum" eSuperTypes="#//AbstractDatum">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A PropertyDatum identifies a DataType value produced by one or more regions and consumed by one or more usually other regions. The DataType value is passsed within an Object Slot."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="opposite" eType="#//PropertyDatum"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningClassDatum" lowerBound="1"
eType="#//ClassDatum" eOpposite="#//ClassDatum/ownedPropertyDatums">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The parent ClassDatum for which this PropertyDatum defines a slot."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredProperty" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Property"
transient="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="superPropertyDatums" upperBound="-1"
eType="#//PropertyDatum"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="key" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Set true if this PropertyDatum forms part of a key for the containing ClassDatum."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="targetClassDatum" eType="#//ClassDatum">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The elemental ClassDatum that this PropertyDatum's slot references. if it is more derived than the referencedProperty.type."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="RecursionEdge" eSuperTypes="#//Edge">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="primary" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="false"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Region" abstract="true" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-NamedElement #//Symbolable">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A Region is a sub-graph with Nodes and Edges in the graphical representation of a Rule. Derived Regions provide distinct forms of execution semantics."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedNodes" upperBound="-1"
eType="#//Node" containment="true" eOpposite="#//Node/owningRegion"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedEdges" upperBound="-1"
eType="#//Edge" containment="true" eOpposite="#//Edge/owningRegion"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedClusters" upperBound="-1"
eType="#//Cluster" containment="true" eOpposite="#//Cluster/owningRegion"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="rootRegion" eType="#//RootRegion"
eOpposite="#//RootRegion/activeRegions"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="RootPartition" eSuperTypes="#//CompositePartition">
<eStructuralFeatures xsi:type="ecore:EReference" name="owningRootRegion" lowerBound="1"
eType="#//RootRegion" eOpposite="#//RootRegion/ownedRootPartition"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="loadingPartition" eType="#//LoadingPartition"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="RootRegion" eSuperTypes="#//Region">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A RootRegion is the root of a graphical representation of a Transformation."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="activeRegions" upperBound="-1"
eType="#//Region" eOpposite="#//Region/rootRegion"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedConnections" upperBound="-1"
eType="#//Connection" containment="true" eOpposite="#//Connection/owningRootRegion"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedLoadingRegion" lowerBound="1"
eType="#//LoadingRegion" containment="true" eOpposite="#//LoadingRegion/owningRootRegion"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="owningScheduleModel" lowerBound="1"
eType="#//ScheduleModel" eOpposite="#//ScheduleModel/ownedRootRegions">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The overall ScheduleModel in which this RootRegion is contained."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredTransformation"
eType="ecore:EClass ../../org.eclipse.qvtd.pivot.qvtbase/model/QVTbase.ecore#T-qvtbase-Transformation">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The Transformation represented by this RootRegion."/>
</eAnnotations>
</eStructuralFeatures>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedRootPartition" eType="#//RootPartition"
containment="true" eOpposite="#//RootPartition/owningRootRegion"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="RuleRegion" eSuperTypes="#//MappingRegion">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A RuleRegion provides a graphical representation of an executable mapping defined by a Rule; QVTc Mapping or QVTr Relation."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredRule" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.qvtd.pivot.qvtbase/model/QVTbase.ecore#T-qvtbase-Rule">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The Rule represented by this RuleRegion."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ScheduleModel" eSuperTypes="../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Model">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The ScheduleModel is the root of a graphical representation of typically one Transformation."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedClassDatums" upperBound="-1"
eType="#//ClassDatum" containment="true" eOpposite="#//ClassDatum/owningScheduleModel"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedMappingRegions" upperBound="-1"
eType="#//MappingRegion" containment="true" eOpposite="#//MappingRegion/owningScheduleModel"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedOperationRegions"
upperBound="-1" eType="#//OperationRegion" containment="true" eOpposite="#//OperationRegion/owningScheduleModel"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="ownedRootRegions" upperBound="-1"
eType="#//RootRegion" containment="true" eOpposite="#//RootRegion/owningScheduleModel"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ShadowNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A ShadowNode supports the construction of a shadow instance from its ShadowPartEdge parts."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ShadowPartEdge" eSuperTypes="#//ArgumentEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A ShadowPartEdge conveys a shadow part type to a shadow construction node."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredPart" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-ShadowPart">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Shadow part for a shadow instamnce construction."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="StringLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A StringLiteralNode supports a String literal value in a QVTs graph."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="stringValue" lowerBound="1"
eType="ecore:EDataType ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-String">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The String literal value."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SuccessEdge" eSuperTypes="#//NavigationEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A SuccessNode has a value corresponding to the true/false success of the cobtaining region."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="SuccessNode" eSuperTypes="#//MappingNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A SuccessNode has a value corresponding to the true/false success of the cobtaining region."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="Symbolable" abstract="true" interface="true">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="symbolName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"
transient="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TupleLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A TupleLiteralNode supports the construction of a tuple from its TuplePartEdge parts."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TuplePartEdge" eSuperTypes="#//ArgumentEdge">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A TuplePartEdge conveys tuple map part key and value to a map construction node."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredPart" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-TupleLiteralPart">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Tuple Part for a tuple construction."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="TypeLiteralNode" eSuperTypes="#//OperationNode">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A TypeLiteralNode supports a type literal value in a QVTs graph."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="typeValue" lowerBound="1"
eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-Type">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The type for the type literal."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="UnknownNode" eSuperTypes="#//MappingNode"/>
<eClassifiers xsi:type="ecore:EClass" name="VariableNode" abstract="true" eSuperTypes="#//MappingNode">
<eStructuralFeatures xsi:type="ecore:EReference" name="referredVariable" eType="ecore:EClass ../../org.eclipse.ocl.pivot/model/Pivot.ecore#T-pivot-VariableDeclaration"
transient="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="VerdictRegion" eSuperTypes="#//RuleRegion">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A VerductRegion provides a graphical representation of an executable mapping that resolves the overall failure of a hierrachy of QVTr Relations."/>
</eAnnotations>
<eStructuralFeatures xsi:type="ecore:EReference" name="referredRuleRegion" lowerBound="1"
eType="#//RuleRegion">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The Rule represented by this RuleRegion."/>
</eAnnotations>
</eStructuralFeatures>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="ConnectionRole">
<eLiterals name="MANDATORY_EDGE">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A MANDATORY_EDGE connection 'passes' a used input edge that must be fully computed before use. This is typically for a&#xD;&#xA;collection, since it is not possible to determine when a last partial addition is the last, therefore all&#xD;&#xA;additions must occur before any access."/>
</eAnnotations>
</eLiterals>
<eLiterals name="MANDATORY_NODE" value="1">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A MANDATORY_NODE connection 'passes' a used input node that must be fully computed before use. This is typically for a&#xD;&#xA;collection, since it is not possible to determine when a last partial addition is the last, therefore all&#xD;&#xA;additions must occur before any access."/>
</eAnnotations>
</eLiterals>
<eLiterals name="PASSED" value="2">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A PASSED connection passes a required input. This is typically from an introducer/producer/join to&#xD;&#xA;a consumer's head. A value must actually be passed by the call."/>
</eAnnotations>
</eLiterals>
<eLiterals name="PREFERRED_EDGE" value="3">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A PREFERRED_EDGE connection 'passes' a used input edge that is beneficially but not necessarily computed before use.&#xD;&#xA;If not computed before use, run-time overheads are incurred to defer reads until writes have occurred."/>
</eAnnotations>
</eLiterals>
<eLiterals name="PREFERRED_NODE" value="4">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A PREFERRED_NODE connection 'passes' a used input node that is beneficially but not necessarily computed before use.&#xD;&#xA;If not computed before use, run-time overheads are incurred to defer reads until writes have occurred."/>
</eAnnotations>
</eLiterals>
<eLiterals name="UNDEFINED" value="5">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An UNDEFINED connection is the intial state of a connection that evolves by merging."/>
</eAnnotations>
</eLiterals>
</eClassifiers>
<eClassifiers xsi:type="ecore:EDataType" name="Number" instanceClassName="java.lang.Number">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A primitive type representing the mathematical concept of real or integer."/>
</eAnnotations>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="Role">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Phase identifies the different processing phases of a mapping. The phases are ordered by decreasing&#xA;certainty, allowing the earlier to be chosen by a merge.&#xA;&#xA;NEW = REALIZED || SPECULATION&#xA;OLD = CONSTANT || LOADED || PREDICATED || SPECULATED"/>
</eAnnotations>
<eLiterals name="CONSTANT">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Unequivocably known as compile time constant"/>
</eAnnotations>
</eLiterals>
<eLiterals name="CONSTANT_SUCCESS_FALSE" value="1">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Unequivocably known as compile time success constant with a false value"/>
</eAnnotations>
</eLiterals>
<eLiterals name="CONSTANT_SUCCESS_TRUE" value="2">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Unequivocably known as compile time success constant with a true value"/>
</eAnnotations>
</eLiterals>
<eLiterals name="LOADED" value="3">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Known once input models loaded"/>
</eAnnotations>
</eLiterals>
<eLiterals name="REALIZED" value="4">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Known once a mapping has realized its results"/>
</eAnnotations>
</eLiterals>
<eLiterals name="PREDICATED" value="5">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Not known, awaiting matching"/>
</eAnnotations>
</eLiterals>
<eLiterals name="SPECULATION" value="6">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Awaiting other mappings to speculate"/>
</eAnnotations>
</eLiterals>
<eLiterals name="SPECULATED" value="7">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Known other mappings are speculating"/>
</eAnnotations>
</eLiterals>
<eLiterals name="OTHER" value="8">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Not known, nothing to do with mapping execution"/>
</eAnnotations>
</eLiterals>
</eClassifiers>
<eClassifiers xsi:type="ecore:EEnum" name="Utility">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The utility of the model element for the overall match."/>
</eAnnotations>
<eLiterals name="DISPATCH">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The predicated dispatcher of an overriding rule (the overridden dispatcher is a TRACE)."/>
</eAnnotations>
</eLiterals>
<eLiterals name="TRACE">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The predicated/realized trace node."/>
</eAnnotations>
</eLiterals>
<eLiterals name="SUCCESS">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The success node to which the match/not-match verdict is assigned."/>
</eAnnotations>
</eLiterals>
<eLiterals name="DEPENDENCY">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A dependency that must be satisfied to validate the region's execution."/>
</eAnnotations>
</eLiterals>
<eLiterals name="COMPOSED">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A LoadingRegion element."/>
</eAnnotations>
</eLiterals>
<eLiterals name="NON_NULL_MATCHED">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Non-null value reachable by to-1 navigation from the (?? a) trace node, or by to-? to an ExplicitNull."/>
</eAnnotations>
</eLiterals>
<eLiterals name="NULLABLE_MATCHED">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="Maybe-null value reachable by to-1 navigation from the (?? a) trace node, or by to-? to an ExplicitNull."/>
</eAnnotations>
</eLiterals>
<eLiterals name="NON_NULL_CONDITIONAL">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="A non-null selectively computable element depending on if conditions / loops. Not matched."/>
</eAnnotations>
</eLiterals>
<eLiterals name="NULLABLE_CONDITIONAL">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="An uninitialized / erroneous / undefined utility."/>
</eAnnotations>
</eLiterals>
<eLiterals name="NOT_KNOWN">
<eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
<details key="documentation" value="The predicated dispatcher of an overriding rule (the overridden dispatcher is a TRACE)."/>
</eAnnotations>
</eLiterals>
</eClassifiers>
</ecore:EPackage>