| <?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="ImperativeOCL" name="ImperativeOCL" nsURI="http://www.omg.org/spec/QVT/20151201/ImperativeOCL" |
| nsPrefix="imperativeocl"> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.AltExp" name="AltExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.AltExp.body" |
| name="body" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="altBodyOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.AltExp.condition" |
| name="condition" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="altCondOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.AssertExp" name="AssertExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.AssertExp.assertion" |
| name="assertion" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="assertOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.AssertExp.log" |
| name="log" eType="#ImperativeOCL.LogExp" containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="assertExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="ImperativeOCL.AssertExp.severity" |
| name="severity" eType="#ImperativeOCL.SeverityKind" defaultValueLiteral="error"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.AssignExp" name="AssignExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.AssignExp.defaultValue" |
| name="defaultValue" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="defaultOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="ImperativeOCL.AssignExp.isReset" |
| name="isReset" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.Boolean"/> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.AssignExp.left" |
| name="left" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="leftOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.AssignExp.value" |
| name="value" upperBound="-1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="valueOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.BlockExp" name="BlockExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.BlockExp.body" |
| name="body" upperBound="-1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="blockOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.BreakExp" name="BreakExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.CatchExp" name="CatchExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.CatchExp.body" |
| name="body" upperBound="-1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="catchExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.CatchExp.exception" |
| name="exception" lowerBound="1" upperBound="-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="catchExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="exceptionVariable" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.Variable" |
| containment="true"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="catchExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ComputeExp" name="ComputeExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.ComputeExp.body" |
| name="body" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="computeOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.ComputeExp.returnedElement" |
| name="returnedElement" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.Variable" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="computeOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ContinueExp" name="ContinueExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.DictLiteralExp" name="DictLiteralExp" |
| eSuperTypes="EssentialOCL.ecore#EssentialOCL.LiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.DictLiteralExp.part" |
| name="part" ordered="false" upperBound="-1" eType="#ImperativeOCL.DictLiteralPart" |
| containment="true" resolveProxies="false" eOpposite="#//DictLiteralPart/partOwner"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.DictLiteralPart" name="DictLiteralPart" |
| eSuperTypes="EMOF.ecore#EMOF.Element"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.DictLiteralPart.key" |
| name="key" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="keyOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.DictLiteralPart.value" |
| name="value" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="valOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="partOwner" lowerBound="1" |
| eType="#ImperativeOCL.DictLiteralExp" eOpposite="#ImperativeOCL.DictLiteralExp.part"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.DictionaryType" name="DictionaryType" |
| eSuperTypes="EssentialOCL.ecore#EssentialOCL.CollectionType"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.DictionaryType.keyType" |
| name="keyType" 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="keyDict"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ForExp" name="ForExp" |
| eSuperTypes="#ImperativeOCL.ImperativeLoopExp"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ImperativeExpression" |
| name="ImperativeExpression" abstract="true" eSuperTypes="EssentialOCL.ecore#EssentialOCL.OclExpression"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ImperativeIterateExp" |
| name="ImperativeIterateExp" eSuperTypes="#ImperativeOCL.ImperativeLoopExp"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.ImperativeIterateExp.target" |
| name="target" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.Variable" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="tgtOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ImperativeLoopExp" name="ImperativeLoopExp" |
| abstract="true" eSuperTypes="EssentialOCL.ecore#EssentialOCL.LoopExp #ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.ImperativeLoopExp.condition" |
| name="condition" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="loopCondOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.InstantiationExp" name="InstantiationExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.InstantiationExp.argument" |
| name="argument" upperBound="-1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="argOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.InstantiationExp.extent" |
| name="extent" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.Variable"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="instantiationExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.InstantiationExp.instantiatedClass" |
| name="instantiatedClass" lowerBound="1" eType="ecore:EClass EMOF.ecore#EMOF.Class"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="instantiationExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="initializationOperation" |
| 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="instantiationExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ListLiteralExp" name="ListLiteralExp" |
| eSuperTypes="EssentialOCL.ecore#EssentialOCL.LiteralExp"> |
| <eStructuralFeatures xsi:type="ecore:EReference" name="part" upperBound="-1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.CollectionLiteralPart" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="listLiteralExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ListType" name="ListType" |
| eSuperTypes="EssentialOCL.ecore#EssentialOCL.CollectionType"/> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.LogExp" name="LogExp" |
| eSuperTypes="EssentialOCL.ecore#EssentialOCL.OperationCallExp #ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.LogExp.condition" |
| name="condition" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="logOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.RaiseExp" name="RaiseExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.RaiseExp.argument" |
| name="argument" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="raiseExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.RaiseExp.exception" |
| name="exception" 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="raiseExpression"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.ReturnExp" name="ReturnExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.ReturnExp.value" |
| name="value" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="returnExp"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EEnum" xmi:id="ImperativeOCL.SeverityKind" name="SeverityKind"> |
| <eLiterals xmi:id="ImperativeOCL.SeverityKind.error" name="error"/> |
| <eLiterals xmi:id="ImperativeOCL.SeverityKind.warning" name="warning" value="1"/> |
| <eLiterals xmi:id="ImperativeOCL.SeverityKind.fatal" name="fatal" value="2"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.SwitchExp" name="SwitchExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.SwitchExp.alternativePart" |
| name="alternativePart" upperBound="-1" eType="#ImperativeOCL.AltExp" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="altOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.SwitchExp.elsePart" |
| name="elsePart" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="elsePartOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.TryExp" name="TryExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.TryExp.exceptClause" |
| name="exceptClause" upperBound="-1" eType="#ImperativeOCL.CatchExp" containment="true" |
| resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="exceptOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.TryExp.tryBody" |
| name="tryBody" upperBound="-1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="tryBodyOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.Typedef" name="Typedef" |
| eSuperTypes="EMOF.ecore#EMOF.Class"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.Typedef.base" |
| name="base" 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="typedef"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.Typedef.condition" |
| name="condition" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="typedef"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.UnlinkExp" name="UnlinkExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.UnlinkExp.item" |
| name="item" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="itemUnlink"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.UnlinkExp.target" |
| name="target" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="tgtUnlink"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.VariableInitExp" name="VariableInitExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.VariableInitExp.referredVariable" |
| name="referredVariable" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.Variable" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="declaration"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EAttribute" xmi:id="ImperativeOCL.VariableInitExp.withResult" |
| name="withResult" eType="ecore:EDataType PrimitiveTypes.ecore#PrimitiveTypes.Boolean" |
| defaultValueLiteral="false"/> |
| </eClassifiers> |
| <eClassifiers xsi:type="ecore:EClass" xmi:id="ImperativeOCL.WhileExp" name="WhileExp" |
| eSuperTypes="#ImperativeOCL.ImperativeExpression"> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.WhileExp.body" |
| name="body" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="whileOwner"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| <eStructuralFeatures xsi:type="ecore:EReference" xmi:id="ImperativeOCL.WhileExp.condition" |
| name="condition" lowerBound="1" eType="ecore:EClass EssentialOCL.ecore#EssentialOCL.OclExpression" |
| containment="true" resolveProxies="false"> |
| <eAnnotations source="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"> |
| <details key="body" value="whileExpression"/> |
| </eAnnotations> |
| </eStructuralFeatures> |
| </eClassifiers> |
| </ecore:EPackage> |