| <?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="EssentialOCL" name="EssentialOCL" nsURI="http://www.omg.org/spec/QVT/20151201/EssentialOCL" |
| nsPrefix="essentialocl"> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.AnyType" name="AnyType" |
| eSuperTypes="EMOF.ecore#EMOF.Type"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.BagType" name="BagType" |
| eSuperTypes="#EssentialOCL.CollectionType"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.BooleanLiteralExp" name="BooleanLiteralExp" |
| eSuperTypes="#EssentialOCL.PrimitiveLiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EssentialOCL.BooleanLiteralExp.booleanSymbol" |
| name="booleanSymbol" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.Boolean"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.CallExp" name="CallExp" |
| abstract="true" eSuperTypes="#EssentialOCL.OclExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.CallExp.source" |
| name="source" eType="#EssentialOCL.OclExpression" containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="appliedElement"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.CollectionItem" name="CollectionItem" |
| eSuperTypes="#EssentialOCL.CollectionLiteralPart"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.CollectionItem.item" |
| name="item" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="collectionItem"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EEnum" xmi:id="EssentialOCL.CollectionKind" name="CollectionKind"> |
| <eLiterals xmi:id="EssentialOCL.CollectionKind.Set" name="Set"/> |
| <eLiterals xmi:id="EssentialOCL.CollectionKind.OrderedSet" name="OrderedSet" value="1"/> |
| <eLiterals xmi:id="EssentialOCL.CollectionKind.Bag" name="Bag" value="2"/> |
| <eLiterals xmi:id="EssentialOCL.CollectionKind.Sequence" name="Sequence" value="3"/> |
| <eLiterals xmi:id="EssentialOCL.CollectionKind.Collection" name="Collection" value="4"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.CollectionLiteralExp" |
| name="CollectionLiteralExp" eSuperTypes="#EssentialOCL.LiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EssentialOCL.CollectionLiteralExp.kind" |
| name="kind" eType="#EssentialOCL.CollectionKind"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.CollectionLiteralExp.part" |
| name="part" ordered="false" upperBound="-1" eType="#EssentialOCL.CollectionLiteralPart" |
| containment="true" resolveProxies="false" eOpposite="#EssentialOCL.CollectionLiteralPart.collectionLiteralExp"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.CollectionLiteralPart" |
| name="CollectionLiteralPart" abstract="true" eSuperTypes="EMOF.ecore#EMOF.TypedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.CollectionLiteralPart.collectionLiteralExp" |
| name="collectionLiteralExp" lowerBound="1" eType="#EssentialOCL.CollectionLiteralExp" |
| transient="true" resolveProxies="false" eOpposite="#EssentialOCL.CollectionLiteralExp.part"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.CollectionRange" name="CollectionRange" |
| eSuperTypes="#EssentialOCL.CollectionLiteralPart"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.CollectionRange.first" |
| name="first" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="firstOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.CollectionRange.last" |
| name="last" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="lastOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.CollectionType" name="CollectionType" |
| eSuperTypes="EMOF.ecore#EMOF.DataType"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.CollectionType.elementType" |
| name="elementType" lowerBound="1" eType="ecore:EClass EMOF.ecore#EMOF.Type"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="collectionType"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.EnumLiteralExp" name="EnumLiteralExp" |
| eSuperTypes="#EssentialOCL.LiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.EnumLiteralExp.referredEnumLiteral" |
| name="referredEnumLiteral" eType="ecore:EClass EMOF.ecore#EMOF.EnumerationLiteral"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="literalExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.ExpressionInOcl" name="ExpressionInOcl" |
| eSuperTypes="EMOF.ecore#EMOF.TypedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.ExpressionInOcl.bodyExpression" |
| name="bodyExpression" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="topExpression"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.ExpressionInOcl.contextVariable" |
| name="contextVariable" eType="#EssentialOCL.Variable" containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="selfOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.ExpressionInOcl.generatedType" |
| name="generatedType" ordered="false" upperBound="-1" eType="ecore:EClass EMOF.ecore#EMOF.Type" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="owningExpression"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.ExpressionInOcl.parameterVariable" |
| name="parameterVariable" ordered="false" upperBound="-1" eType="#EssentialOCL.Variable" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="varOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.ExpressionInOcl.resultVariable" |
| name="resultVariable" eType="#EssentialOCL.Variable" containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="resultOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.FeatureCallExp" name="FeatureCallExp" |
| abstract="true" eSuperTypes="#EssentialOCL.CallExp"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.IfExp" name="IfExp" eSuperTypes="#EssentialOCL.OclExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.IfExp.condition" |
| name="condition" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="ifOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.IfExp.elseExpression" |
| name="elseExpression" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="elseOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.IfExp.thenExpression" |
| name="thenExpression" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="thenOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.IntegerLiteralExp" name="IntegerLiteralExp" |
| eSuperTypes="#EssentialOCL.NumericLiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EssentialOCL.IntegerLiteralExp.integerSymbol" |
| name="integerSymbol" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.Integer"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.InvalidLiteralExp" name="InvalidLiteralExp" |
| eSuperTypes="#EssentialOCL.LiteralExp"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.InvalidType" name="InvalidType" |
| eSuperTypes="EMOF.ecore#EMOF.Type"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.IterateExp" name="IterateExp" |
| eSuperTypes="#EssentialOCL.LoopExp"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.IterateExp.result" |
| name="result" eType="#EssentialOCL.Variable" containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="baseExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.IteratorExp" name="IteratorExp" |
| eSuperTypes="#EssentialOCL.LoopExp"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.LetExp" name="LetExp" |
| eSuperTypes="#EssentialOCL.OclExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.LetExp.in" |
| name="in" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="letExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.LetExp.variable" |
| name="variable" lowerBound="1" eType="#EssentialOCL.Variable" containment="true" |
| resolveProxies="false" eOpposite="#EssentialOCL.Variable.letExp"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.LiteralExp" name="LiteralExp" |
| abstract="true" eSuperTypes="#EssentialOCL.OclExpression"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.LoopExp" name="LoopExp" |
| abstract="true" eSuperTypes="#EssentialOCL.CallExp #EssentialOCL.OclExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.LoopExp.body" |
| name="body" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="loopBodyOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.LoopExp.iterator" |
| name="iterator" upperBound="-1" eType="#EssentialOCL.Variable" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="loopExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.NavigationCallExp" name="NavigationCallExp" |
| eSuperTypes="#EssentialOCL.FeatureCallExp"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.NullLiteralExp" name="NullLiteralExp" |
| eSuperTypes="#EssentialOCL.LiteralExp"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.NumericLiteralExp" name="NumericLiteralExp" |
| abstract="true" eSuperTypes="#EssentialOCL.PrimitiveLiteralExp"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.OclExpression" name="OclExpression" |
| abstract="true" eSuperTypes="EMOF.ecore#EMOF.TypedElement"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.OperationCallExp" name="OperationCallExp" |
| eSuperTypes="#EssentialOCL.FeatureCallExp"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.OperationCallExp.argument" |
| name="argument" upperBound="-1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="parentCall"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.OperationCallExp.referredOperation" |
| name="referredOperation" eType="ecore:EClass EMOF.ecore#EMOF.Operation"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="referringExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.OrderedSetType" name="OrderedSetType" |
| eSuperTypes="#EssentialOCL.CollectionType"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.PrimitiveLiteralExp" |
| name="PrimitiveLiteralExp" abstract="true" eSuperTypes="#EssentialOCL.LiteralExp"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.PropertyCallExp" name="PropertyCallExp" |
| eSuperTypes="#EssentialOCL.NavigationCallExp"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.PropertyCallExp.referredProperty" |
| name="referredProperty" eType="ecore:EClass EMOF.ecore#EMOF.Property"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="referringExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.RealLiteralExp" name="RealLiteralExp" |
| eSuperTypes="#EssentialOCL.NumericLiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EssentialOCL.RealLiteralExp.realSymbol" |
| name="realSymbol" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.Real"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.SequenceType" name="SequenceType" |
| eSuperTypes="#EssentialOCL.CollectionType"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.SetType" name="SetType" |
| eSuperTypes="#EssentialOCL.CollectionType"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.StringLiteralExp" name="StringLiteralExp" |
| eSuperTypes="#EssentialOCL.PrimitiveLiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EssentialOCL.StringLiteralExp.stringSymbol" |
| name="stringSymbol" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.String"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.TemplateParameterType" |
| name="TemplateParameterType" eSuperTypes="EMOF.ecore#EMOF.Type"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EssentialOCL.TemplateParameterType.specification" |
| name="specification" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.String"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.TupleLiteralExp" name="TupleLiteralExp" |
| eSuperTypes="#EssentialOCL.LiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.TupleLiteralExp.part" |
| name="part" ordered="false" upperBound="-1" eType="#EssentialOCL.TupleLiteralPart" |
| containment="true" resolveProxies="false" eOpposite="#EssentialOCL.TupleLiteralPart.tupleLiteralExp"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.TupleLiteralPart" name="TupleLiteralPart" |
| eSuperTypes="EMOF.ecore#EMOF.TypedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.TupleLiteralPart.attribute" |
| name="attribute" eType="ecore:EClass EMOF.ecore#EMOF.Property"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="tupleLiteralPart"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.TupleLiteralPart.tupleLiteralExp" |
| name="tupleLiteralExp" eType="#EssentialOCL.TupleLiteralExp" transient="true" |
| resolveProxies="false" eOpposite="#EssentialOCL.TupleLiteralExp.part"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.TupleLiteralPart.value" |
| name="value" lowerBound="1" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="tupleLiteralPart"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.TupleType" name="TupleType" |
| eSuperTypes="EMOF.ecore#EMOF.Class EMOF.ecore#EMOF.DataType"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.TypeExp" name="TypeExp" |
| eSuperTypes="#EssentialOCL.OclExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.TypeExp.referredType" |
| name="referredType" eType="ecore:EClass EMOF.ecore#EMOF.Type"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="typeExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.UnlimitedNaturalExp" |
| name="UnlimitedNaturalExp" eSuperTypes="#EssentialOCL.NumericLiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="EssentialOCL.UnlimitedNaturalExp.symbol" |
| name="symbol" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.UnlimitedNatural"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.Variable" name="Variable" |
| eSuperTypes="EMOF.ecore#EMOF.TypedElement"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.Variable.initExpression" |
| name="initExpression" eType="#EssentialOCL.OclExpression" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="initializedElement"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.Variable.letExp" |
| name="letExp" eType="#EssentialOCL.LetExp" transient="true" resolveProxies="false" |
| eOpposite="#EssentialOCL.LetExp.variable"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.Variable.representedParameter" |
| name="representedParameter" eType="ecore:EClass EMOF.ecore#EMOF.Parameter"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="variable"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.VariableExp" name="VariableExp" |
| eSuperTypes="#EssentialOCL.OclExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="EssentialOCL.VariableExp.referredVariable" |
| name="referredVariable" eType="#EssentialOCL.Variable"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="referringExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="EssentialOCL.VoidType" name="VoidType" |
| eSuperTypes="EMOF.ecore#EMOF.Type"/> |
| </ecore:EPackage> |